在Java中循环时,字符串比较不起作用

时间:2013-02-04 21:33:55

标签: java loops while-loop java.util.scanner

  

可能重复:
  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循环。为什么呢?

1 个答案:

答案 0 :(得分:10)

将您的条件更改为:

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

m0skit0

以下建议
while(!name.isEmpty()) {

另见