非常に厄介なコードを統合しようとしていますが、問題が発生しないようにしたいと考えています。として作成された日付が表示される場所もCalendar.getInstance().getTime()
あれば、ただの日付が表示される場所もありnew Date()
ます。それらをすべてに変換すると、物事が壊れますnew Date()
か、それとも他のものを使用したい理由がありますか?
34301 次
2 に答える
14
理論的には、いいえ。java.util.Dateとjava.util.Calendar.getInstance()の両方が、最終的にSystem.currentTimeMillis()を使用して現在の時刻を返すためです。
ただし、Calendarの実装では、ロケールなどの他の事項が考慮されます。ロケールがJPまたはTHの場合は、両方のクラスのソースコードで確認できます。
于 2012-08-14T20:37:06.967 に答える
1
私は両方が同じを返すと思います:
Calendar.getInstance().getTime()
:このカレンダーの時刻値を表すDateオブジェクトを返します(エポックからのミリ秒オフセット(1970年1月1日00:00:00.000 GMT(グレゴリオ暦)) ")。
new Date()
:内部でSystem.currentTimeMillis()を使用し、Dateオブジェクトを割り当てて初期化し、割り当てられた時刻を表すように、ミリ秒単位で測定します。現在の時刻と1970年1月1日UTCの午前0時の間のミリ秒単位で測定された差。
私は次のようにチェックしました:
public static void main(String[] args) {
Date date = new Date();
Date date1 = Calendar.getInstance().getTime();
System.out.println(date +" = " + date1);
}
出力:
Wed Aug 15 02:45:15 IST 2012 = Wed Aug 15 02:45:15 IST 2012
于 2012-08-14T20:36:21.560 に答える