我在 Eclipse 中有一个 JUnit 测试(我用 Junit 3 和 JUnit 4 尝试过),它检查一个解析文件的方法但是由于某种我不知道的原因,当我使用它时它会冻结或挂起:
while(scanner.hasNextLine() && scanner !=null){
if(scanner.hasNext()){ do something }
}
但是当我使用以下它工作正常:
while(scanner.hasNextLine() && scanner !=null && scanner.hasNext() ){
do something
}
“做某事”中的代码除了将scanner.next()分配给变量之外没有特别之处,System.out.print()
在这两种情况下实际上都可以正常输出。这些不是在做同样的事情吗?这是一个合理的错误(如果是,请解释原因)还是一个愚蠢的错误?