import java.util.ArrayList;
import java.util.Scanner;
public class Arraylistexample {
public static void main(String[] args)
{
ArrayList<String> al=new ArrayList();
System.out.println("Enter how many values you want to enter");
Scanner scr =new Scanner(System.in);
int s=scr.nextInt();
System.out.println("Enter the values");
for(int i=0;i<s;i++)
{
Scanner sc=new Scanner(System.in);
String sr=sc.nextLine();
al.add(sr);
}
al.add(2, "Tom");
al.add(1, "Henry");
al.add(0, "Natalie");
System.out.println("The values you entered are:");
for(String str:al)
{
System.out.println(str);
}
}
}
上記のコードでは、ユーザーから値を取り出し、ArrayListに格納しようとしています。ユーザが値を入力した後、プログラムは元の値をシフトすることにより、指定されたインデックスにもう一度値を入力します。値を順番に入力してプログラムを実行すると、エラーは発生しません。出力はArrayListのランダムインデックスによるシフト
Natalie
Henry
Tom
Harry
Potter
する必要がありますのに対し、私は
Enter how many values you want to enter
2
Enter the values
Harry
Potter
The values you entered are:
Natalie
Harry
Henry
Potter
Tom
として、それは私にエラーを与える上記のプロセスでそれをやろうたび値がある場合、シフトはいえ行われていない理由しかし、私はまだ把握カントランダムに入力されます。あなたはTom
追加
al.add(2, "Tom");
al.add(1, "Henry");
al.add(0, "Natalie");
を追加しているので、
は、なぜあなたは、複数の 'Scanner'オブジェクトを作成していますか? –
出力は正しいです、 '0 = Harry、1 = Potter'、2で' Tom'を挿入した後、 '0 = Harry、1 = Potter、2 = Tom'を取得します。 「ヘンリー」を1に入れた後、「0 =ハリー、1 =ヘンリー、2 =ポッター、3 =トム」を得る。 0にナタリーを入れた後、0 =ナタリー、1 =ハリー、2 =ヘンリー、3 =ポッター、3 =トム; – ritesht93