【发布时间】:2013-11-30 19:16:23
【问题描述】:
对 Java 非常陌生,我在大学的入门课上做一个项目。我正在尝试创建一种方法来搜索字符串数组以查找输入状态并返回索引。如果用户输入了一个不在数组中的查询,我希望它请求一个新的状态来搜索。 我的例外是“变量 statePosition 可能尚未初始化”。 下面是代码。
提前谢谢你!
static final int NUM_STATES = 50;
public static int askState(String[] stateNames) {
Scanner keyboard = new Scanner(System.in);
String state;
int statePosition;
System.out.println("Please enter a state that you would like to search:");
state = keyboard.next();
{
for (int i = 0; i < NUM_STATES; i++) {
if (state.equals(stateNames[i])) {
statePosition = i;
} else {
System.out.println("Please enter a valid state:");
}
state = keyboard.next();
}
return statePosition;
}
【问题讨论】:
-
初始化变量 statePosition。 0 就可以了。
-
字符串状态=空; int statePosition=-1;
-
也许是时候接受答案了……
标签: java if-statement for-loop nested