的Netbeans IDE 7.3.1說:「所分配的值是從未使用過」,在下面的程序的指示線:的Netbeans 7.3誤報一個「未使用分配」提示
public class JavaTest {
static int f() {
return Math.random() < 0.9 ? 0 : 1;
}
static int g() {
return Math.random() < 0.2 ? 0 : 1;
}
public static void main(String[] args) {
int ret;
while ((ret = f()) == 0) { // Unused assignment???
ret = g();
if (ret != 0)
System.out.println(ret);
}
System.out.println(ret);
}
}
我想這是一個錯誤Netbeans,但是有人可以確認他們以前是否見過它?
這可能是因爲你設置了'ret'的值,但是在再次設置它之前從不使用這個值,因此'while((ret = f())== 0)'和' while(f()== 0)'。 – Mauren
你是對的,這是一個錯誤,但這是愚蠢的Netbeans和一些人在這裏(包括我自己)應該建議使用更清晰的代碼。我會使用一個不同的變量來返回每個函數。 – madth3
謝謝大家。 madth3的好處,雖然Netbeans出錯了,但是欺騙幾個人以及Netbeans是非常棘手的,所以我會通過使用不同的變量來澄清它。 –