質問
毎回まって動作する必要があり日timstamps Java思うと、いつものようになっているように過ごせ無限することができるようになりのビジネスに影響を与える重要なのApiではなくコードを自分の日付と時刻のユーティリティクラス.こちらはカップルの面倒もった:
0ヶ月です。を実現するキャッシュフローを使用カレンダーです。月替わりの8での迷惑とは8月ません。
の取得日時な時刻です。いつもの明る零点のタイムスタンプの一部。
私がその他の問題が私の過去ることができていないます。気軽にござます。
なので、私の質問です---どの第三者のApiを使用しています簡単にJavaのご利用日時の操作】任意の思想を Joda?誰でも見に近いでJSR-310日時API?
解決
このポスト は議論の比較ではJavaの日付/時刻API vs JODA.
個人的に使おう グレゴリオ暦 や SimpleDateFormat 他の時間が必要で操る日時にJava.いった問題用のJava APIいることは言うまでもありませも使いやすい、という見せる。
他のヒント
java.時間
Java8以降では、 java.時間 枠組み作 Joda-時間, 定義された、 JSR310, 延長の ThreeTenインストール プロジェクト.見 のチュートリアル.
この枠組みsupplantsのjava.util.日付/.カレンダー。変換の方法または変換前後に仕事に古いコードなどのjava.がありません。
のコアクラス:
Instant
このタイムライン、 世界標準時間.ZoneId
Aタイムゾーンになります。のサブクラスZoneOffset
含まれ 一定のための世界標準時間.ZonedDateTime
=Instant
+ZoneId
を表した瞬間のタイムラインの調整に特定のタイムゾーンになります。
この枠組みを解決の問題です。
0ヶ月
月数1-12java.ます。
しかも、 Enum
(Month
提供するオブジェクトインスタンスの各月。りにご利用いただけますに影響を及ぼす可能性があり"マジック"数字コードのように 9
または 10
.
if ( theMonth.equals ( Month.OCTOBER ) ) { …
さらに、このenumとともに便利なユーティリティの方法など、月の局在の名前です。
していない場合は馴染みのJava enumsの読み込みを チュートリアル 研究。彼らは意外に便利です。
日付のない時間
の LocalDate
クラスを表す日付け値なく、時間、タイムゾーンになります。
LocalDate localDate = LocalDate.parse( "2015-01-02" );
この決定に関する日が必要でタイムゾーンになります。新日舵を切前にパリにモントリオールでられる原因は下記の通りですので昨日の'.の ZoneId
クラスを表すタイムゾーンになります。
LocalDate today = LocalDate.now( ZoneId.of( "America/Montreal" ) );
同様に、あ LocalTime
クラス時間いつの日付またはタイムゾーンになります。
約java.時間
の java.時間 枠組みがJava8以降である。これらのクラスsupplantの面倒古 レガシー 日付-時間の授業など java.util.Date
, Calendar
, & SimpleDateFormat
.
の Joda-時間 プロジェクトは、 メンテナンスモード,助言への移行 java.時間 ます。
詳細は、 Oracleのチュートリアル.検索スタックオーバーフローのための多くの例で説明しています。仕様 JSR310.
入手先のjava.時間の授業で
- Java SE8, Java SE9, 以降、
- ですのでお問い合わせ下さい。
- 一部の標準のJava APIでは、同梱の実装です。
- Java9を追加し若干の特徴と問題を修正
- Java SE6 や Java SE7
- 多くのjava.時間の機能はバに移植されるJava6&7 ThreeTen-Backport.
- Android
- の ThreeTenABP プロジェクトに対応 ThreeTen-Backport (上記)Android注目する必要があると主張した。
- 見 使い方ThreeTenABP....
の ThreeTenインストール プロジェクトextends java.時間を追加します。このプロジェクトには、立地のためには、将来的な追加java.ます。すべての授業などはこちら Interval
, YearWeek
, YearQuarter
, は、 以上.
Apache Commons Langプロジェクトは、 DateUtils
を行うクラスに役立日。
使ってい DateUtils.truncate()
多くは、"ゼロ"の日のためにもいくつか表示してください日時オブジェクトかを表す日付であり、無視できない時間)となります。それぞれの方法での作品も Date
や Calendar
オブジェです。
ってJoda専用の三年間、それ以外は良かったと思いますので、地区全体を覆うインターフェースが多数あり便利。'.
Jodaで複雑な起動する場合は、例えば、この概念の期間と間隔に見えるような類似ができ始めるだけで置換 org.joda.time.DateTime
( org.joda.time.DateMidnight
) java.util.Date
コードで、こだわり、多くの有用な方法でそのクラスでは、理解します。
Im用GregorianCalendarにも及びます。簡単にjava.util.日程は複雑すぎあね。
なので、私のアドバイス用のGCは、簡単な
でも同じです。っての喫煙も必要だと考えるのは良い考えましょう2008年平均、2008年には31日の31日のヶ月、この部分-11を意味するのは12月でした。
一方、うっすぐのです。
ることを常に取得しくはJavaの日付時間の図書館があります。私は利用したことのないJoda、簡単に見るように見え、その疲れを実施し、理解していJSR-130を正しく取り知識からJoda的に取り入れてゆっくりと含まれてJavaSE.
くため過去のプロジェクトの感に包まれたJavaの日付時刻オブジェクトとしたものです。その後のラッパーのための日時の操作が可能です。
日Apiは非常に難しいデザインした場合は、をしてしまった定位ができます。してロールを自分で見でやっていくことになったのです。こJodaうことができたことなどに良い仕事が信用に開発者向けです。今のご質問に思いを聞いたものもメリカの図書館におけるもので遊んだ経験を全くお持ちでないとでやっている。
多くのプログラマが日付、数多くの非推奨コンストラクタ過負荷では使用が難しいと)はまさしくその通りなのだが、出GregorianCalendarになり少しましょう。この例はこちらかホ:
http://java.sun.com/j2se/1.4.2/docs/api/java/util/GregorianCalendar.html
でも簡単に書く自分の日APIの上に座り、原Javaクラス、日付とカレンダーです。基本的には日付として成り立つという条件で、カレンダーからのスしようとしている場合、その塾をコンセプトを一つのクラス:
- 日(年-月-日)
- 瞬間(currentTimeMillis)
理解することで変革をどう扱っていま日のように概念にコードです。いとなりますより簡便な、より明確にし、です。あらゆる観点から見て!
私Jodaが複雑なものが圧倒的に多目的に重要なこといった標準Javaる形態の一例としてどのように構文解析やフォーマットです。スティーブンColebourne、男性の背後にJODAは、仕様のリードすることにつながりJSR-310、これらの問題ぁ(今後の議論のための最後の数年.
Do it yourselfこの簡単です。では、以下の項目を記入のクラスMyDate包年-月-日)、月(enum),TimeOfDay時-分-秒-millis),DayOfWeek(enum)、インスタント(ラッピングできます。常に考える時間帯に変換とInstants。
このような厳しい利用できカレンダーは、SimpleDateFormatの下にフードです。すだけでいいよということのない後悔します。