Javaで指定された週番号の最初の日を取得する方法 質問する

Javaで指定された週番号の最初の日を取得する方法 質問する

説明させてください。日付の週番号と年を知ることで、

Date curr = new Date();
Calendar cal = Calendar.getInstance();
cal.setTime(curr);
int nweek = cal.WEEK_OF_YEAR;
int year = cal.YEAR;

しかし、その週の最初の日の日付を取得する方法がわかりません。Calendar、Date、DateFormat を調べましたが、役に立つものは何も見つかりません...

何か提案はありますか? (Java で作業中)

ベストアンサー1

これらのフィールドは値を返しません。定数これは、オブジェクト内で取得/設定/追加できるフィールドを識別しますCalendar。目的を達成するには、まず を取得しCalendar、それをクリアして、既知の値を設定する必要があります。これにより、日付がその週の最初の日に自動的に設定されます。

// We know week number and year.
int week = 3;
int year = 2010;

// Get calendar, clear it and set week number and year.
Calendar calendar = Calendar.getInstance();
calendar.clear();
calendar.set(Calendar.WEEK_OF_YEAR, week);
calendar.set(Calendar.YEAR, year);

// Now get the first day of week.
Date date = calendar.getTime();

ぜひ学んでください読むjavadocsクラス/メソッド/フィールドの使い方を学ぶため、IDE でランダムに操作しようとしないでください ;)

そうは言っても、java.util.Datejava.util.Calendar大失敗可能であれば、ジョダタイム

おすすめ記事