• ベストアンサー

String型の日付(2005/11/25)の比較

Java初心者です。String型で2005/11/25 のように2つString型で日付を取得したときに、大小の比較をしたいのです。どういう方法が考えられますか?よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • Bonjin
  • ベストアンサー率43% (418/971)
回答No.3

書式がyyyy/mm/ddで決め打ちならば他の方が書かれているとおりString#compareTo()で充分でしょう。 yyyy/m/dなど書式が不定の場合には、java.text.DateFormatを利用してjava.util.Dateに変換して比較するか、/で文字列を分解し、年・月・日を抽出してそれぞれを比較するなどが考えられます。

その他の回答 (2)

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.2

yyyy/mm/dd の様に桁が変動しないなら 単純に compareTo で大小比較ができると思います

  • deadlock
  • ベストアンサー率67% (59/87)
回答No.1

まったく同じフォーマットになっていれば、compareToメソッドが使えます。  strDate1.compareTo(strDate2) > 0  strDate1.compareTo(strDate2) = 0  strDate1.compareTo(strDate2) < 0 これは、  日付1>日付2  日付1=日付2  日付1<日付2 ということになります。 strDate1やstrDate2にまったく関係ない文字列を持ってきても普通に処理してしまうので、 比較に使う変数を間違えないように注意してください。

関連するQ&A