好的,所以这段代码应该使用扫描仪(这里名为reader)读取用户的输入并将其写入文件。这里的问题是扫描仪正在读取,没有例外,每个值只有一个......所以如果用户输入" 1" ," 2"," 3" ," 4"只有" 2"和" 4"保存到文件中。 没有例外。
还有必要写"退出"两次打破循环,取决于添加的项目数是偶数还是奇数......
为什么会这样?有什么想法吗?
while (reader.hasNext()) {
String valor = null;
// We check for a "quit" to stop adding items to the array list..
if (reader.next().equals("quit")){
break;
} else {
valor = reader.next();
fileManaging arxiu = new fileManaging();
fileManaging.createFile(valor);
}
}
答案 0 :(得分:3)
更改以下代码:
if (reader.next().equals("quit")){
break;
} else {
valor = reader.next();
用这个:
valor = reader.next();
if (valor.equals("quit")){
break;
} else {
答案 1 :(得分:1)
通过两次调用reader.next()
,您每次迭代都会使用扫描程序两次。
尝试改为:
String valor = reader.next();
if (!valor.equals("quit")) {
fileManaging arxiu = new fileManaging();
fileManaging.createFile(valor);
}