java怎样通过日期获取星期几?

Python019

java怎样通过日期获取星期几?,第1张

1、使用Calendar类\x0d\x0a/**\x0d\x0a* 获取当前日期星期

\x0d\x0a*\x0d\x0a* @param dt\x0d\x0a* @return 当前日期是星期几\x0d\x0a*/\x0d\x0apublic static String getWeekOfDate(Date dt) {\x0d\x0aString[] weekDays = {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"}\x0d\x0aCalendar cal = Calendar.getInstance()\x0d\x0acal.setTime(dt)\x0d\x0aint w = cal.get(Calendar.DAY_OF_WEEK) - 1\x0d\x0aif (w 回答于 2022-11-16

import java.text.SimpleDateFormat

import java.util.Calendar

public class DataTest {

public static void main(String[] args) {

printWeekdays()

}

private static final int FIRST_DAY = Calendar.MONDAY

private static void printWeekdays() {

Calendar calendar = Calendar.getInstance()

setToFirstDay(calendar)

for (int i = 0 i < 7 i++) {

printDay(calendar)

calendar.add(Calendar.DATE, 1)

}

}

private static void setToFirstDay(Calendar calendar) {

while (calendar.get(Calendar.DAY_OF_WEEK) != FIRST_DAY) {

calendar.add(Calendar.DATE, -1)

}

}

private static void printDay(Calendar calendar) {

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd EE")

System.out.println(dateFormat.format(calendar.getTime()))

}

}

/**

     * 获取上周五时间

     */

    public Date lastFirday() {

//作用防止周日得到本周日期

        Calendar calendar = Calendar.getInstance()

        while (calendar.get(Calendar.DAY_OF_WEEK) != Calendar.MONDAY) {

            calendar.add(Calendar.DAY_OF_WEEK, -1)

        }

        int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK) - 1

        int offset = 7 - dayOfWeek

        calendar.add(Calendar.DATE, offset - 9)

        return DateTimeUtil.getFirstDayOfWeek(calendar.getTime(), 6)//这是从上周日开始数的到本周五为6

    }

 

/**

     * 获取上周一时间

     */

    public Date lastMonday() {

        Calendar calendar = Calendar.getInstance()

        while (calendar.get(Calendar.DAY_OF_WEEK) != Calendar.MONDAY) {

            calendar.add(Calendar.DAY_OF_WEEK, -1)

        }

        int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK) - 1

        int offset = 1 - dayOfWeek

        calendar.add(Calendar.DATE, offset - 7)

        return DateTimeUtil.getFirstDayOfWeek(calendar.getTime(), 2)

    }

参考

请采纳,谢谢