0

比較演算子を使用してJavaで日付を比較するにはどうすればよいですか?比較演算子を使用してJavaで日付を比較するにはどうすればよいですか?

例:

日付1が30-10-2017
日付2であるが、それ未満date3であることは事実であるべきとき31-10-2017
date3が偽30-10-2018

date2リターンです。日付が別の日付よりも小さい場合はどうすればtrueを返すことができますか?あなたは直接関係演算子を使用することはできませんが、日付/時刻型は、一般的にComparableを実装

{ 
    boolean check = false; 
    if(year < theDate.year) 
    { 
     return true; 
    } 
    if(year > theDate.year) 
    { 
     return false; 
    } 
    if(month < theDate.month) 
    { 
     check = true; 
    } 
    if(day < theDate.day) 
    { 
     check = true; 
    } 
    else 
    { 
     return false; 
    } 
    return check; 
} 
+0

の比較である

  • た結果ではない場合tはJavaが比較演算子を日付で受け入れると思う。 'LocalDate' APIと' isBefore'メソッドと 'isAfter'メソッドを使うことができます。 –

  • +0

    あなたの日付クラスのタイプは何ですか? (完全修飾) 'java.util.Date'か、' java.time.LocalDate'か何か他のものか? –

    答えて

    0

    return (day < theDate.day) || (month < theDate.month) || (year < theDate.year);


    以下は私の現在のソリューションです:

    は、これは私のコードです。

    したがって、論理date1 < date2にはdate1.compareTo(date2) < 0を実行できるはずです。

    +0

    私は日付オブジェクトに設定した数値を比較しています。私が使用しているフィールドは、日、月、年の整数です。だから私はそれらの値をチェックしようとしています。 – julianrios

    +0

    @julianrios私はあなたが言っていることを理解していません。 – lexicore

    +0

    これは私のイントロto javaクラスの割り当てです。だから私は少し失われている。私はbluejでコーディングしており、私はこの割り当てのためにAPIにアクセスできるとは思わない。 – julianrios

    0

    boolean after(Date date)またはboolean before(Date date)を使用してください。例えば 、date2.before(date3)

    +0

    申し訳ありませんが分かりません。 – julianrios

    +1

    @julianriosどのような授業を日付に使用しますか? – Maksim

    +0

    自分のコードをすべて挿入する方法はありますか?私が自分の分野や方法で持っているものを見るだけでは簡単かもしれません。 – julianrios

    0
    LocalDate date1 = LocalDate.of(2017, 10, 30); // Year, month, day. 
    LocalDate date2 = LocalDate.of(2017, 10, 31); 
    LocalDate date3 = LocalDate.of(2018, 10, 30); 
    
    System.out.printf("%s before %s? %s%n", date1, date2, date1.isBefore(date2)); 
    System.out.printf("%s before %s? %s%n", date2, date3, date3.isBefore(date3)); 
    System.out.printf("%s before %s? %s%n", date3, date1, date3.isBefore(date1)); 
    

    あなたが比較を自分で行う方法を知りたい場合は、次の

    • はその日、その月、最初の年の比較:最も重要なから少なくとも
    • この理由から、日付を表すISO標準(および時刻)は2017-09-30T13:05:01,000で、同じ長さの表現でのテキスト比較で十分です。

    パターンが行く:

    1. ヶ月等しくない場合は年が等しく、その後、その後の結果が見つかりました
    2. 結果が「私はドン日
    関連する問題