- ベストアンサー
日付の加算
現在Javaの基礎から勉強中です。 日付の加算を行いたいのですがJavadocのDate型を見ると 大半が推奨されません、になっていてよくわからない状態です。 例えば、2008/02/28 23:30 に 40分 加算して 2008/02/29 0:10 としたい場合にはどのように実装すればいいのでしょうか?※Date型ではうるう年は考慮できませんか? すみませんが、よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
現在は、Calendar型が中心となっているようですが、DATE型も依然として利用されているので両方とも覚えましょう。 Calendar型とDATE型は、Calendar型のメソッドにより相互に値を変換できます。 簡単なサンプルをあげておきます。 ---------------------------------------------------------------------------- import java.util.*; public class Time { public static void main(String args[]) { String ss; Calendar cal2008; // 2008/02/28 23:30 に 40分後 ---> 2008/02/29 0:10 System.out.println("----------Calendar型の表示--------------"); cal2008 = Calendar.getInstance(); ss = cal2008.toString(); System.out.println("Calendar.getInstance()= " + ss); System.out.println("---------------------------------------"); cal2008.set(2008, 1, 28, 23, 30, 0); // 月は0から始まる System.out.println("DATE型 = " + cal2008.getTime()); // これはDATE型になります。 cal2008.add(Calendar.MINUTE, 40); System.out.println("40分後 = " + cal2008.getTime()); } }
その他の回答 (1)
- koko_u_
- ベストアンサー率18% (459/2509)
>大半が推奨されません、になっていてよくわからない状態です。 「推奨されません」の近くに「GregorianCalendar に置き換えられました」とか書いてませんか?
お礼
回答ありがとうございます、日付型はDateだけじゃなく Calendar型もあるのですね。
お礼
回答ありがとうございます。さらに詳しいサンプルまでつけて頂き助かります。Calendar型のJavadocをさらっと見た感じアドバイスの通り互換性がありますね、サンプルを元にJavadocを見ながらいろいろいじってみようと思います。