[英]Read lines from input into arraylist java
我正在嘗試將用戶輸入的行讀入arraylist。
Scanner scan = new Scanner(System.in);
ArrayList<String> lines = new ArrayList<String>();
while (true) {
if (scan.nextLine().equals("")) {
break;
}
for (String s : lines) {
lines.add(scan.nextLine());
}
}
for (int i = 0; i < lines.size(); i++) {
System.out.println(lines.get(i));
}
問題是last for循環不會運行。 我不太明白為什么闖入while循環不僅會在while循環中停止。
我不知道你為什么使用for (String s : lines)
循環。 在代碼中scan.nextLine()
被調用了兩次。 因此,它可能會跳過替代值。 另外,lines沒有任何值,因此for (String s : lines)
條件不允許插入任何值。 所以只有它不顯示價值。
試試這個代碼
Scanner scan = new Scanner(System.in);
ArrayList<String> lines = new ArrayList<String>();
String s;
while (true) {
s = scan.nextLine();
if (s.equals("")) {
break;
}
lines.add(s);
}
for (int i = 0; i < lines.size(); i++) {
System.out.println(lines.get(i));
}
這里使用以下代碼
Scanner scan = new Scanner(System.in);
ArrayList<String> lines = new ArrayList<String>();
String s=null;
while (true) {
s=scan.nextLine();
if (s.equals("")) {
break;
}else{
lines.add(s);
}
}
for (int i = 0; i < lines.size(); i++) {
System.out.println(lines.get(i));
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.