用java做了一个收费的系统,选择选项后怎么回退到程序刚开始呢

发布网友

我来回答

3个回答

热心网友

将整个代码放到while(){}中,然后增加一个boolean变量控制while的循环。随后会贴出修改后的源码。

//代码修改如下,带有/**/的行为我添加的代码。
/**/import java.util.Scanner;

public class New {

public static void main(String[] args) {

// TODO Auto-generated method stub

// 初始化
boolean next = true;

/**/while (next) {

System.out.println("您好!欢迎使用车票自动贩售系统!");

System.out.println("查询线路请按1");

System.out.println("计算里程数请按2");

System.out.println("购票请按3");

/**/System.out.println("退出请按4");

Scanner in = new Scanner(System.in);

int type = in.nextInt();

switch (type) {

case 1:

System.out.println("线路信息");

break;

case 2:

System.out.println("里程数");

break;

case 3:

System.out.println("请输入您的路程里数:");

System.out.println("若不超过20公里为1.5元每公里;若超过20公里为2元每公里");

System.out.println("不足一公里按一公里计算,请输入整数公里数");

double a = in.nextInt();

if (a >= 20)

System.out.println("需收金额为:" + a * 2);

else

System.out.println("需收金额为:" + a * 1.5);

System.out.println("请投币;");

int bill = in.nextInt();

System.out.println("正在验钞请稍后。。。");

System.out.println("收入金额为:" + bill);

if (a >= 20)

System.out.println("需收金额为:" + a * 2);

else

System.out.println("需收金额为:" + a * 1.5);

if (a >= 20)

System.out.println("找零:" + (bill - (a * 2)));

if (a < 20)

System.out.println("找零:" + (bill - (a * 1.5)));

System.out.println("是否确认购买?");

System.out.println("确认请按1,取消请按2!");

int s = in.nextInt();

if (s == 1)

System.out.println("请稍后,正在为您打印车票。。。");

if (s != 1)

System.out.println("购买请求已取消!");

break;

/**/case 4:
/**/next = false;
/**/break;

default:

System.out.println("对不起,您输入的代码有误,请重新输入!");

}
}
/**/}
}

热心网友

for(){
  买票收费的方法
  if(取消  || 买票成功){
      break;
  }
}

当然实际并不是这样实现,会用到线程,对买票收费的方法也会进行封装,用来调用

热心网友

把初始化那一部分做成一个方法,选择返回的时候调用一下那个方法就行了

热心网友

将整个代码放到while(){}中,然后增加一个boolean变量控制while的循环。随后会贴出修改后的源码。

//代码修改如下,带有/**/的行为我添加的代码。
/**/import java.util.Scanner;

public class New {

public static void main(String[] args) {

// TODO Auto-generated method stub

// 初始化
boolean next = true;

/**/while (next) {

System.out.println("您好!欢迎使用车票自动贩售系统!");

System.out.println("查询线路请按1");

System.out.println("计算里程数请按2");

System.out.println("购票请按3");

/**/System.out.println("退出请按4");

Scanner in = new Scanner(System.in);

int type = in.nextInt();

switch (type) {

case 1:

System.out.println("线路信息");

break;

case 2:

System.out.println("里程数");

break;

case 3:

System.out.println("请输入您的路程里数:");

System.out.println("若不超过20公里为1.5元每公里;若超过20公里为2元每公里");

System.out.println("不足一公里按一公里计算,请输入整数公里数");

double a = in.nextInt();

if (a >= 20)

System.out.println("需收金额为:" + a * 2);

else

System.out.println("需收金额为:" + a * 1.5);

System.out.println("请投币;");

int bill = in.nextInt();

System.out.println("正在验钞请稍后。。。");

System.out.println("收入金额为:" + bill);

if (a >= 20)

System.out.println("需收金额为:" + a * 2);

else

System.out.println("需收金额为:" + a * 1.5);

if (a >= 20)

System.out.println("找零:" + (bill - (a * 2)));

if (a < 20)

System.out.println("找零:" + (bill - (a * 1.5)));

System.out.println("是否确认购买?");

System.out.println("确认请按1,取消请按2!");

int s = in.nextInt();

if (s == 1)

System.out.println("请稍后,正在为您打印车票。。。");

if (s != 1)

System.out.println("购买请求已取消!");

break;

/**/case 4:
/**/next = false;
/**/break;

default:

System.out.println("对不起,您输入的代码有误,请重新输入!");

}
}
/**/}
}

热心网友

for(){
  买票收费的方法
  if(取消  || 买票成功){
      break;
  }
}

当然实际并不是这样实现,会用到线程,对买票收费的方法也会进行封装,用来调用

热心网友

把初始化那一部分做成一个方法,选择返回的时候调用一下那个方法就行了

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com