Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Java中查找某个日期在一个月中出现的第n个日期_Java_Date - Fatal编程技术网

在Java中查找某个日期在一个月中出现的第n个日期

在Java中查找某个日期在一个月中出现的第n个日期,java,date,Java,Date,我需要找出Java中某个日期的特定日期是该月的第n个星期几。例如,今天是2016年4月20日,是本月的第三个星期三,或者是2016年10月31日,是10月的第五个星期一。如何找到一个月中某一天的具体发生次数?使用Calendar类的get方法 public static int getOccurenceOfDayInMonth() { return Calendar.getInstance().get(Calendar.DAY_OF_WEEK_IN_MONTH); } [编辑] 以下是

我需要找出Java中某个日期的特定日期是该月的第n个星期几。例如,今天是2016年4月20日,是本月的第三个星期三,或者是2016年10月31日,是10月的第五个星期一。如何找到一个月中某一天的具体发生次数?

使用Calendar类的get方法

public static int getOccurenceOfDayInMonth() {
    return Calendar.getInstance().get(Calendar.DAY_OF_WEEK_IN_MONTH);
}
[编辑]

以下是给定任何日期而不是当前日期的解决方案

public static int getOccurenceOfDayInMonth(Date date) {
    Calendar calendar = Calendar.getInstance();
    calendar.setTime(date);

    return calendar.get(Calendar.DAY_OF_WEEK_IN_MONTH);
}

在寻找最佳版本之前,您有什么方法吗?哪种版本的Java?如果小于8,是否使用Joda Time?Java 7。是的,我们正在使用Joda时间。不,我还没有找到问题的解决方案,或者我不会问这个问题,所以请不要否决我,因为我在提问之前不知道答案。请在提问之前做一些研究。右边有许多相关的(可能重复的)帖子。这实际上是正确的。我生成了从2016年1月1日开始的1000天,它返回了任何日期的某个特定日期的正确第n次出现。