您的位置:

java判断今天周几,取xiaz,java判断当前时间是否为周一

本文目录一览:

java中如何根据某一周(比如22周)获取这一周是几月几号,星期几。有这样的函数方法吗?

我的程序是输入某年某周,输出这一周的开始日期和结束时期,不知是否符合你的需要。至少Java是不直接提供这种方法的。

import java.util.*;

public class Test31 {

public static void main(String[] args) {

int year, year1, year2, month1, month2, day1, day2, week, sum = 0;

int[] days = new int[] { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };

int i;

Scanner scan = new Scanner(System.in);

System.out.print("年:");

year = scan.nextInt();

System.out.print("周次:");

week = scan.nextInt();

if (year 0) {

System.out.println("年份错误,必须大于等于0");

return;

}

if (week 1 || week 54) {

System.out.println("周次错误,必须位于 1 .. 53 之间");

return;

}

sum += 7 * (week - 1);

//修正总天数

Calendar c = Calendar.getInstance();

c.set(year, 0, 1);

switch (c.get(Calendar.DAY_OF_WEEK))

{

case Calendar.TUESDAY:

{

sum -= 1;

break;

}

case Calendar.WEDNESDAY:

{

sum -= 2;

break;

}

case Calendar.THURSDAY:

{

sum -= 3;

break;

}

case Calendar.FRIDAY:

{

sum -= 4;

break;

}

case Calendar.SATURDAY:

{

sum -= 5;

break;

}

case Calendar.SUNDAY:

{

sum -= 6;

break;

}

default:

break;

}

if ((year % 400 == 0) || (year % 4 == 0 year % 100 != 0)) {

days[1] = 29;

}

for (i = 0; i days.length; i++) {

if (sum = days[i]) {

sum -= days[i];

}

else {

break;

}

}

year1 = year;

month1= i + 1;

day1 = sum + 1;

//修改开始日期

if (day1 1) {

day1 += days[11];

month1 = 12;

year1--;

}

year2 = year1;

month2 = month1;

day2 = day1 + 6;

if (day2 days[month1 - 1]) {

day2 -= days[month1 - 1];

month2++;

if (month2 12) {

month2 = 1;

year2++;

}

}

System.out.printf("%d年第%d周 : %d年%d月%d日 ~ %d年%d月%d日", year, week, year1, month1, day1, year2, month2, day2);

}

}

输出测试:

年:2011

周次:22

2011年第22周 : 2011年5月23日 ~ 2011年5月29日

年:2011

周次:1

2011年第1周 : 2010年12月27日 ~ 2011年1月2日

这是从星期一至星期日。

也可以这样:

public static void main(String[] args){

Scanner scan = new Scanner(System.in);

System.out.print("年:");

int year = scan.nextInt();

System.out.print("周:");

int week = scan.nextInt();

Calendar c = Calendar.getInstance();

c.set(Calendar.DAY_OF_WEEK, 1);

c.set(Calendar.WEEK_OF_YEAR, week);

//该周第一天(星期日)所在的日期

int y1 = c.get(Calendar.YEAR);

int m1 = c.get(Calendar.MONTH) + 1;

int d1 = c.get(Calendar.DATE);

c.add(Calendar.DATE, 6);

//该周最后一天(星期六)所在的日期

int y2 = c.get(Calendar.YEAR);

int m2 = c.get(Calendar.MONTH) + 1;

int d2 = c.get(Calendar.DATE);

System.out.printf("%d年第%d周:%d-%d-%d ~ %d-%d-%d", year, week, y1, m1, d1, y2, m2, d2);

}

这是从星期日开始,如:

年:2011

周:22

2011年第22周:2011-5-22 ~ 2011-5-28

java如何判断一个日期是否是四个季末的日期

java判断一个日期是否是四个季末的日期:JAVA获取当前时间或传入时间为几点、周几、日、月、季度、年,判断当前或传入日期是否为零点、1号、周一、1月、1季度。

java中,如何提取每个月的10号,然后判断是否是星期六星期日

Calendar c=Calendar.getInstance();

c.set(Calendar.MONTH, 7); //设置月份

c.set(Calendar.DAY_OF_MONTH, 8); //设置为10号

if(c.get(Calendar.DAY_OF_WEEK)==7){

System.out.println("今天周六");

}else if(c.get(Calendar.DAY_OF_WEEK)==1){

System.out.println("今天周日");

}else{

System.out.println("今天不是周末");

}