2
我在Eclipse中有一個JUnit測試(我嘗試過使用Junit 3和JUnit 4),它檢查解析文件的方法但出於某種原因我不知道它凍結或掛起,當我用這個:爲什麼scanner.next()會導致JUnit測試掛起
while(scanner.hasNextLine() && scanner !=null){
if(scanner.hasNext()){ do something }
}
但是當我用下面的正常工作:
while(scanner.hasNextLine() && scanner !=null && scanner.hasNext()){
do something
}
在「做什麼」並指出,除了分配scanner.next特殊的代碼()變量,在這兩種情況下,使用System.out.print()
實際上都會輸出正常。這些是不是在做同樣的事情?這是一個合理的錯誤(如果是這樣請解釋爲什麼)或者它是一個愚蠢的錯誤?
你爲什麼要檢查'null' _after_ dereferencing'scanner' - 這看起來像一個bug。任何爲什麼你需要檢查'hasNextLine()'_and_'hasNext()'? – 2013-03-22 17:04:51