だからここに私の方法があります:
public static ArrayList collectSchedule(ArrayList schedule, ArrayList list, int counter)
{
((ArrayList) list.get(counter)).add(schedule);
System.out.println(list);
return list;
}
public static ArrayList getClassInfo(int count)
{
Scanner stdIn = new Scanner (System.in);
String userInput;
System.out.print("Enter the name of class #" + count + " : ");
userInput = stdIn.nextLine();
ArrayList x = getClassTime();
x.add(0, userInput);
x.add(1, getClassLength());
x.add(2, getDayOfTheWeek());
return x;
}
そこで、getClassInfo(ArrayList)から値 "x"を取得し、それを数値(必要な場所のインデックス)および別のArrayList( "schedule"と呼びます)とともにメソッドcollectScheduleに入力します。ArrayListの「schedule」に「x」(ArrayList)を追加します。「x」を印刷すると、「schedule」のすべての値が表示されます。(注:スケジュールに「x」の複数の異なるインスタンスを追加します!)。したがって、「スケジュール」に3つの異なる「x」を追加すると、それらすべてが別々に出力されます([x、x、x] [x、x、x] [x、x、x])。「schedule」から「x」の値を1つだけ取得するのに問題があります。
このコードは機能すると思いましたが、コンパイル時にエラーが発生します。
public static void creation(ArrayList list)
{
System.out.println((schedule.get(0)).x().get(1));
}
誰かが私が間違っているところを助けてくれますか?オブジェクトの使用について何か読んだことがありますか?しかし、方法がわかりません!
ありがとう!