有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何使用if语句结束用户输入的do while循环

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,我决定开始学习java,因为安卓 studio需要它。我又在学习如何做循环了。我不能让它工作。我已经查过了,找不到。我如何通过按“f”来结束此操作?我的思考过程是,一旦完成了do循环的第一行,它将通过if语句来更改结束循环的值


共 (3) 个答案

  1. # 1 楼答案

    if(){}正文下使用break语句。另外,您的==比较将给出false,使用str1.equals(str2)进行比较

  2. # 2 楼答案

    您可以使用下面的代码进行检查

    if (end.equals("f")) { // end == "f" , it check the reference.
         a = false;
    }
    
  3. # 3 楼答案

    您的问题是您正在将字符串与==进行比较。您必须使用equals来编写正确的if语句

    if (end.equals("f")){...}