現在の日付に基づいて次の日付を計算する必要があります。たとえば、今日が '05-NOV-2014' で、ユーザーが 1st Monday のような入力をしたとします。そのため、ユーザー入力に基づいて、現在の月の第 1 月曜日がすでに過ぎている場合は、翌月の第 1 月曜日を調べる必要があります。今月の最初の月曜日がまだ来ていない場合は、今月の日付を見つけなければなりません。
java.util.Calendar クラスを使用しています。
//user inputs
int dayOfWeek = 3; // as user has provided 'Tuesday'
int noOfWeek = 1; // as user provided 1st
Calendar cal = Calendar.getInstance(); // getting the current instance.
int currentDayOfWeek = Calendar.getInstance().get(Calendar.DAY_OF_WEEK); // getting the cCurrentDayOfWeek in integer.
int currentNoOfWeek = Calendar.getInstance().get(Calendar.DAY_OF_WEEK_IN_MONTH); // getting which week it is in the current month
if(noOfWeek < currentNoOfWeek){
// the date has gone past in the current month.
}
else if ((noOfWeek == currentNoOfWeek) && dayOfWeek < currentDayOfWeek){
// though the week number is same but as the currentDayOfWeek is greater than the provided day so in this case also date has gone past in the current month.
}
これ以上進めません。あなたの助けを求めています。