私のアプリケーションでは、ユーザは利用可能なロケールのリストから彼女のLocale
を設定できます。アプリケーションは、指定された日付が休日で、このタスクにjollydayを使用しているかどうかを判断する必要があります。私は特定のHolidayCalendar
を設定するには、次のコードに変更することができます特定のロケールからjollyday HolidayManagerインスタンスを作成するにはどうすればよいですか?
public boolean isHoliday(Calendar cal) {
HolidayManager m = HolidayManager.getInstance();
return m.isHoliday(cal);
}
:ここ
は私の現在のコードです
public boolean isHoliday(Calendar cal) {
HolidayManager m = HolidayManager.getInstance(HolidayCalendar.GERMANY);
return m.isHoliday(cal);
}
しかし、この方法は推奨されませんし、私が把握する必要がありますwhich HolidayCalendar
私はユーザーのロケールに基づいて必要があります。私はHolidayManager
がLocale.getDefault()
を使用しているとHoliday
内のパブリックメソッドがあまりにもあります(hereを参照)が、私はこれを行う方法を見つけ出すことはできませんし、ドキュメントがあることを知っている
public boolean isHoliday(Calendar cal, Locale loc) {
HolidayManager m = HolidayManager.getInstance(loc);
return m.isHoliday(cal);
}
:私は何をしたい、このようなものです非常に短い。
私の質問:特定のロケールに基づいて休日を取得することはできますか?すべてのロケールがHolidayCalendar
に一致するように大文字のswitch
文を記述する必要がありますか?
更新a PR to the projectを作成して機能を追加しました。 PRが既にマージされました
を開くしようと、私はあなたがそのサードパーティ、オフサイトのリソースの後ろにチームに連絡することをお勧めします。ここで話題以外の質問をするのではなく(たとえそれが「話題」になっていても、ここで答えを得るチャンスはかなり小さいと思います)。 – GhostCat
@GhostCat SOちゃんのことについて既にいくつかの質問があり、作者が応答しているようです。私は、java +休日に関する質問は、質問を維持するのに十分な共通点だと思います。もしそれが下落したら、私はそれを閉じます。 – cringe