import java.util.Scanner;
public class main {
public static void main(String[] args) {
boolean a = true;
do {
Scanner input = new Scanner(System.in);
System.out.println("Press any on keyboard:");
String keys = input.nextLine();
System.out.println("You pressed:");
System.out.println(keys);
System.out.println("Your hash is:");
String B = "#B";
String hash = B+keys;
System.out.println(hash);
System.out.println("To end loop press f");
//End Loop
Scanner exit = new Scanner(System.in);
String end = exit.nextLine();
if (end=="f") {
a=false;
}
}
while(a);
}
}
我一直在使用python,由于android studio需要它,我决定开始学习java。我正在学习如何再次执行循环。我无法使它正常工作。我已经查了一下,找不到了。如何按“ f”结束该操作?我的思维过程是,一旦它通过do循环的第一行完成,它将通过if语句更改结束循环的值。
答案 0 :(得分:2)
在break
正文下使用if(){}
语句。同样,您的==
比较将为false,请使用str1.equals(str2)
进行比较。
答案 1 :(得分:0)
您的问题是您正在将字符串与==
进行比较。您必须使用equals来编写正确的if语句。
if (end.equals("f")){...}
答案 2 :(得分:0)
您可以使用以下代码进行检查
if (end.equals("f")) { // end == "f" , it check the reference.
a = false;
}
答案 3 :(得分:-1)
直接的问题是比较。但老实说,这里的真正问题是您的逻辑。如果您调试它,则将永远不会进入,或者永远不会退出它。 “执行”部分只发生一次,此后您仍然需要在while循环中执行操作。