ユーザーが日付を選択し、次に日付を取得する期間のタイプのチェックボックスを選択する日付ピッカーがあります。例えば:
ユーザーは 11 月の 1 を選択し、チェックボックス「月」を選択します。この場合、終了日は 1 増加します。これは単純に聞こえるかもしれませんが、ゆっくりと私を悩ませ始めます!
問題は、Java にはこの種の作業に適した優れた日付オブジェクトがないため、Calendar を使用すると思ったのですが、次の例のようにカレンダーの日付をインクリメントするのは簡単ではありません。
endDate.set(startDate.YEAR, startDate.MONTH+1, startDate.DATE);
理論的には、これにより、開始日よりも 1 大きい月が 1 ずつ増えます。これは、12 月に月を 1 増やすと、12 月からの EXECPT 月の約 90% で機能し、整数月は 13 を返しますstartDate.DATE;
。startDate.Year;
私の質問は、これを行う簡単な方法はありませんか? たくさんのIf文を作ることができましたが、それはちょっと冗長だと思います.