我在尝试numberOfQuestion
方法的任何时候尝试将isOdd()
增加1,如下所示。我得到了一个错误"
无法访问的代码
&#34 ;.我怎么能做对的?!
import java.util.Scanner;
public class Geek {
private String geekName;
private int numberOfQuestion;
public Geek (String name) {
geekName=name;
numberOfQuestion=0;
}
public int getNumberOfQuestion() {
return numberOfQuestion;
}
public boolean isOdd(int num) {
if(num%2==0) {
return false;
}
else {
return true;
}
numberOfQuestion++;
}
}
答案 0 :(得分:2)
将numberOfQuestions++
作为方法public boolean isOdd(intNum)
消息是正确的,因为在递增之前从方法返回,所以您的行无法访问。
答案 1 :(得分:2)
numberOfQuestion++;
被认为是不可缓存的代码,因为在任何一种情况下:
num
为奇数,则您的方法返回true并退出方法。num
是偶数,则您的方法返回false并退出该方法。正如你所看到的那样,它无法达到这条线:
numberOfQuestion++;
因此,如果你想做某事,你需要在你的方法结束之前做到这一点:
public boolean isOdd(int num) {
//whatever you want to do here.. such as numberOfQuestion++;
return (num % 2 != 0);
}
答案 2 :(得分:0)
将增量语句放在第一行:
public boolean isOdd(int num) {
numberOfQuestion++;
if(num%2==0) {
return false;
}
return true;
}
在最后一行,它无法访问,因为您返回if
和else
答案 3 :(得分:0)
返回方法关闭后,numberOfQuestion ++从未完成。 你需要这个:
public boolean isOdd(int num) {
numberOfQuestion++;
if(num%2==0) {
return false;
}
else {
return true;
}
}