次のコードでは、値は正しく取りますが、要素の総数は表示されません。出力には常に1つの要素が欠けています。イテレータが機能しない
package com.java.arraylist;
import java.util.*;
public class ArrayList_1 {
public static void main(String[] args) {
ArrayList<String> arrayList = new ArrayList<String>();
ArrayList_1 obj = new ArrayList_1();
obj.readList(arrayList);
obj.displayList(arrayList);
}
private void displayList(ArrayList<String> arrayList) {
Iterator<String> it = arrayList.iterator();
System.out.println("Entered Array List elements are : ");
while(it.hasNext()){
System.out.println(it.next());
}
}
private void readList(ArrayList<String> arrayList) {
Scanner scanner = new Scanner(System.in);
System.out.println("How many elements are you going to put in this list?");
int end = scanner.nextInt();
int start = 1;
System.out.println("Enter the elements to be added");
while (scanner.hasNext() && start < end) {
String item = scanner.next();
arrayList.add(item);
start++;
}
scanner.close();
}
}
: ここで作業例ですか? HIちょっと 入力された配列リストの要素である ハロー を追加する要素を入力します。私は1に開始を初期化し、<=終了を開始する条件を変更した場合、コンソールは3について ハロー HI –