我正在使用while循環,它不會在它應該時終止。如果它工作正常,那麼當randno
是== highbound
或== lowbound
時它會終止。while循環不會終止?
代碼循環的:
do {
do {
randno = (int) (Math.round((Math.random()*(4)) + 0.5)-1);
direction = getDirection(randno,heading);
} while (robot.look(direction)==IRobot.WALL);
System.out.println(randno);
System.out.println(highbound);
System.out.println(lowbound);
System.out.println("---------------");
} while (randno!=lowbound | randno!=highbound);
的輸出是任一3 3 2 ------
,或2 3 2 ------
,因此該循環應該結束。第一個循環正常結束(我嵌入它們試圖讓它工作...)。出了什麼問題?
它是'while'循環,而不是'until'循環,因此它必須與低位*和*高位不同,以繼續循環,而不是*或*。 – 2014-10-28 11:14:55