java根據年月日判斷周幾,下面提供四中方法需要的可以參考下.
方法一:
public static String dateToWeek(String datetime) throws java.text.ParseException {
SimpleDateFormat f = new SimpleDateFormat("yyyy-MM-dd");
String[] weekDays = { "星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" };
Calendar cal = Calendar.getInstance(); // 獲得一個日歷
Date datet = null;
datet = (Date) f.parse(datetime);
cal.setTime(datet);
int w = cal.get(Calendar.DAY_OF_WEEK) - 1; // 指示一個星期中的某天。
if (w < 0)
w = 0;
System.out.println(weekDays[w]);//星期二
return weekDays[w];
}
public static void main(String[] args) throws java.text.ParseException {
System.out.println(Ts.dateToWeek("2019-01-01"));
}
方法二:
//基姆拉爾森計算公式根據日期判斷星期幾
public static void CalculateWeekDay(int y, int m, int d) {
if(m < 1 || m >12){
System.out.println("你輸入的月份不再范圍內,請重新輸入!");
}
if (m == 1 || m == 2) {
m += 12;
y--;
}
int iWeek = (d + 2 * m + 3 * (m + 1) / 5 + y + y / 4 - y / 100 + y / 400) % 7;
switch (iWeek) {
case 0:
System.out.printf("星期一\n");
break;
case 1:
System.out.printf("星期二\n");
break;
case 2:
System.out.printf("星期三\n");
break;
case 3:
System.out.printf("星期四\n");
break;
case 4:
System.out.printf("星期五\n");
break;
case 5:
System.out.printf("星期六\n");
break;
case 6:
System.out.printf("星期日\n");
break;
}
}
public static void main(String args[]) {
CalculateWeekDay(2019, 1, 8);
}
方法三:
public static int dayForWeek(String pTime) throws Exception {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
Calendar c = Calendar.getInstance();
c.setTime(format.parse(pTime));
int dayForWeek = 0;
if(c.get(Calendar.DAY_OF_WEEK) == 1){
dayForWeek = 7;
}else{
dayForWeek = c.get(Calendar.DAY_OF_WEEK) - 1;
}
System.out.println(dayForWeek);
return dayForWeek;
}
方法四:
public static String getWeek(Date date){
String[] weeks = {"星期日","星期一","星期二","星期三","星期四","星期五","星期六"};
Calendar cal = Calendar.getInstance();
cal.setTime(date);
int week_index = cal.get(Calendar.DAY_OF_WEEK) - 1;
if(week_index<0){
week_index = 0;
}
System.out.println(weeks[week_index]);
return weeks[week_index];
}
public static void main(String[] args) throws Exception {
Ts.getWeek(new Date());
}
每天積累一點點,總用天會有發光的,加油!!!!