我正在制作一个java计算器,以找出蔗糖水溶液(化学物质)的密度和粘度,并决定更进一步。我使用了Micheal Flanagan的Sucrose Java库,它是:
import flanagan.physprop.Sucrose;
代码中的。我想要一种方法来继续输入方程式,而不必继续按压反复运行,所以我创建了
public static void restart() {
System.out.println("would you like to calculate another solution?(y/n)");
String yn = new String(input.nextLine());
String y = "y";
String n = "n";
System.out.println(yn);
if (yn == y){
tf = true;
}
else {
if (yn == n) {
tf = false;
}
else {
System.out.println("ERROR: Please print 'y' or 'n'");
restart();
}
}
if (tf == true) {
calc();
}
if (tf == false) {
fin();
}
}
我正在使用一个名为'import'的扫描程序,它在前面一行中定义。
static Scanner input = new Scanner(System.in);
所以,无论如何,正在发生的事情是代码没有重新启动,而是触发错误。我已经尝试通过将读数定义为字符串并为“y”和“n”创建变量来修复它。我认为“yn”没有正确地注册为字符串,也无法想到其他任何内容。
flanagan.jar可以找到here。
答案 0 :(得分:0)
好吧,我通过切换到数字得到了答案。
public static void restart() {
System.out.println("would you like to calculate another solution?(1 for yes/0 for no)");
int yn = input.nextInt();
int y = 1;
int n = 0;
if (yn == y){
calculator();
}
if (yn == n) {
fin();
}
}
答案 1 :(得分:0)
你需要做的就是使用无限循环:
while(true) {
//code you want to repeat...
}