初学者 - 循环Java编程

时间:2015-08-20 07:58:41

标签: java while-loop

每次输入内容时,此代码都会继续循环。怎么解决?

public void inputPlayer()
{
    Scanner input = new Scanner(System.in);
    while(name.length() < 1)
    {
        System.out.println("Name: ");
        this.setName(input.nextLine());
        //name = input.nextLine();

        if(name.length() < 1)
            System.err.println("Must have one or more characters");
    }
}

Heres'是整个事情的截图:

enter image description here

2 个答案:

答案 0 :(得分:5)

问题在屏幕截图中可见,并且与您的setName()方法有关,该方法目前是:

public void setName(String newName) {
    newName = name;
}

分配错误,因此您永远不会更新name字段。它应该是name = newName;

答案 1 :(得分:1)

因为你的setName函数错误

它应该是:

    public void setName(String newName) {
        name = newName;
    }

你把newName = name;