我的代码应该读取一个序列直到空行。我坚持将对象存储在numItem
的数组中,然后增加numItem
。
public static int readInput(Scanner myScanner, String[] input) {
boolean streamEnded = false;
int numItem = 0;
while (!streamEnded && myScanner.hasNext()) {
String name = myScanner.nextLine();
String id = myScanner.nextLine();
if (name.length() == 0 && id.length() == 0) {
streamEnded = true;
} else {
input[numItem] = name;
input[numItem] = id;
numItem++;
}
Person personTest = new Person(name, id);
persons[numItem]
}
return numItem;
}
}
最佳答案
一些东西:
将numItem
增量放在if/else
语句之外。它应该在persons[numItem]
之后的while循环的结尾。
不知道这是什么:persons[numItem]
应该做什么。如果您打算将personTest对象存储在该索引处,则应为persons[numItem] = personTest;
。
除非您知道要在数组中创建10个人,否则我将使用ArrayList
,这样您可以根据需要添加任意数量的Person
对象。
我并没有逐条检查,这只是我的一般观察。我很确定您的代码不会按原样编译,尤其是这样:persons[numItem]
。希望这个对你有帮助。