Possible Duplicate:
How do I compare strings in Java?




我正在开发一个小程序,该程序使用Scanner询问您的姓名。如果输入blankstring,那么我希望控制台显示一条消息。

这是我尝试做的事情:

import java.util.Scanner;
public class Adventure
{
    public static void main(String[] args)
    {
        Scanner myScan = new Scanner (System.in);
        System.out.println("What's your name?");
        String name = myScan.nextLine();

        while (!(name == ""))   //Always returns false.
        {
            System.out.println("That's not your name. Please try again.");
            name = myScan.nextLine();
        }

        System.out.println("It's a pleasure to meet you, " + name + ".");
    }
}


该代码永远不会进入while循环。为什么?

最佳答案

将您的条件更改为:

while(!name.equals("")) {


或以下m0skit0建议:

while(!name.isEmpty()) {


也可以看看


why equals() method when we have == operator?

关于java - 在Java中执行while循环时,字符串比较无法正常工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14696054/

10-13 06:44
查看更多