是否可以在while循环中分配变量?

时间:2013-10-02 03:34:04

标签: java

我正在寻找一种在while循环中使用扫描仪的方法,而不需要前进两次。

String desc = "";
while (!scanner.next().equals("END")) {
    desc = desc + scanner.next();
}           

如您所见,在while循环的条件和while循环内部调用scanner.next()时。我希望它只能使扫描仪前进一次。有没有办法做到这一点?

2 个答案:

答案 0 :(得分:8)

是的,这是可能的。您还应检查Scanner在其输入中是否包含更多令牌

String desc = "";
String next = null;
while (scanner.hasNext() && !(next = scanner.next()).equals("END")) {
    desc = desc + next;
}

答案 1 :(得分:1)

    String temp = "";
    do {
        desc = desc + temp;
        temp = scanner.next();
    } while(!temp.equals("END"))

您可以使用do-while进行后循环条件检查