Stack Overflowの質問Javaプログラムから続けて、タイムスタンプなしの現在の日付を取得します。
時間なしでDateオブジェクトを取得する最も効率的な方法は何ですか?この二つ以外に方法はありますか?
// Method 1
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date dateWithoutTime = sdf.parse(sdf.format(new Date()));
// Method 2
Calendar cal = Calendar.getInstance();
cal.set(Calendar.HOUR_OF_DAY, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.SECOND, 0);
cal.set(Calendar.MILLISECOND, 0);
dateWithoutTime = cal.getTime();
更新:
私はジョーダタイムについて知っていました。私はそのような単純な(私は思う)タスクのための追加のライブラリを回避しようとしています。しかし、これまでの答えに基づいて、Joda-Timeは非常に人気があるように思われるので、それを検討するかもしれません。
することにより、効率的な、私は一時的なオブジェクト避けたいわけ
String
で使用されるように作成しmethod 1
、一方method 2
の代わり液のハックのように思えます。