カレンダーオブジェクトの配列を作成できますか?
はいの場合、どのようにそうしますか?このコードは確かにエラーを出します
Calendar cal[length];
//loop for initialising all the objects in cal[] array
いいえの場合、「n」個のカレンダーオブジェクトを取得する他の方法はありますか?異なる時間に設定される繰り返しアラームにこれが必要です。
あなたはいつでもすることができますCalendar[] cal = new Calendar[length];
次のようなArrayListも使用できます。
List<Calendar> list = new ArrayList<Calendar>();
次に、次のような便利な方法がたくさんあります。add(Calendar calendar);
それで:
使用できますfor (int x = 0; x < list.size(); x++)
またfor (Calendar cal : list)
これはアレイにも当てはまります。あなたが使用するための内部getCalendar()
またはあなたが必要とするものはnew GregorianCalendar()
何でもCalendar
。
別の方法は、繰り返しアラームを使用java.util.Timer
して配置することです。java.util.TimerTask
Timer t = new Timer();
Calendar c = Calendar.getInstance();
t.schedule(
new TimerTask()
{
public void run()
{
System.out.println("alarm1");
}
},
c.getTime());
カレンダーcal[]=新しいカレンダー[100];
Calendar[] calendars = new Calendar[length];
for (int i = 0; i < length; i++) {
calendars[i] = Calendar.getInstance();
}
Javaでは、new
キーワードを使用しない限り、オブジェクトは割り当てられません。これは、メモリを動的に割り当てるためにのみnewが使用されるC++とは異なります。やろうとしていることを達成するには、次のようにします。
Calendar cal[] = new GregorianCalendar[length];
これらのリンクが役立つ場合があります:http: //docs.oracle.com/javase/6/docs/api/java/util/Arrays.html http://docs.oracle.com/javase/tutorial/java/nutsandbolts/ array.html
また、Javaでは、リストは通常、配列よりも優先して使用されます。リストは操作がはるかに便利であり、アクセスと操作に必要になる可能性が最も高い関数のほとんどが含まれているためです。次のようにリストを使用します。
List<Calendar> calendars = new ArrayList<Calendar>();
for(int i=0; i<length; i++) {
calendars.add(myCalendar);
}
このJavaのドキュメントサイトをご覧ください。そこで、配列の使用方法を見つけることができ、例は非常に役立ちます。int
実際、状況に応じてをに変更するだけで済みCalendar
ます。
Calendar
abstract
クラスです。したがってCalendar
、抽象ではないサブクラスを使用して変数/配列を初期化する必要があります。例えば:
Calendar[] calendars = new Calendar[1];
calendars[0] = new GregorianCalendar();
Javaで配列を作成するための適切な構文は次のとおりです。
Calendar [] cal = new Calander [length];
次に、個々の要素を初期化できます。
おそらくより良い解決策は、次のようなコードを使用することです。
ArrayList<Calendar> list = new ArrayList<Calendar>();
次に、これでループロジックを使用します。
Calendar cal = Calendar.getInstance();
calを使用して値を設定し、ArrayListに追加します:)
これは、アイテムを動的に追加/削除できるためです。