java星期
Ⅰ java中如何獲取日期時間中的星期幾
1、取得指定日期是星期幾
取得指定日期是星期幾可以採用下面兩種方式取得日期是星期幾:
a、使用Calendar類
//根據日期取得星期幾
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;
}
return weeks[week_index];
}
b、使用SimpleDateFormat類
//根據日期取得星期幾
public static String getWeek(Date date){
SimpleDateFormat sdf = new SimpleDateFormat("EEEE");
String week = sdf.format(date);
return week;
}
註:格式化字元串存在區分大小寫
對於創建SimpleDateFormat傳入的參數:EEEE代表星期,如「星期四」;MMMM代表中文月份,如「十一月」;MM代表月份,如「11」;
yyyy代表年份,如「2010」;dd代表天,如「25」
2、取得日期是某年的第幾周
根據日期入得日期是某年的第幾周。
//取得日期是某年的第幾周
public static int getWeekOfYear(Date date){
Calendar cal = Calendar.getInstance();
cal.setTime(date);
int week_of_year = cal.get(Calendar.WEEK_OF_YEAR);
return week_of_year;
}
3、得到某年的某個月有多少天
已知年份和月份,取得該月有多少天。
//取得某個月有多少天
public static int getDaysOfMonth(int year,int month){
Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, year);
cal.set(Calendar.MONTH, month-1);
int days_of_month = cal.getActualMaximum(Calendar.DAY_OF_MONTH);
return days_of_month;
}
4、取得兩個日期之間的相差多少天
已知兩個日期,計算它們之間相差多少天。
// 取得兩個日期之間的相差多少天
public static long getDaysBetween(Date date0, Date date1) {
long daysBetween = (date0.getTime() - date1.getTime() + 1000000) / 86400000;// 86400000=3600*24*1000 用立即數,減少乘法計算的開銷
return daysBetween;
}
Ⅱ java 怎麼計算明天是星期幾
我也很久沒接觸JAVA了,我記得一個公式希望能會對你有一點幫助(假如2001.1.1)
int y = 2001;
int m=1;
int d =1;
if(m==1||m==2){m+=12;y--}
int week = (d + 2 * m + 3 * ( m + 1 ) /5 + y/4 - y/ 100 + y / 400 + 1)%7;
string weekstring="";
switch(week){
case0:weekstring="周日";break;
case1:weekstring="周一";break;
case2:weekstring="周二";break;
case3:weekstring="周三";break;
case4:weekstring="周四";break;
case5:weekstring="周五";break;
case6:weekstring="周六";break;
default : break;
}
Ⅲ java知道當前時間,怎樣知道星期幾
很簡單的呀 用SimpleDateFormate的啦,這樣寫的啦 SimpleDateFormate sdf = new SimpleDateFormate("yyyy-MM-dd HH:mm:ss EEE");這個EEE就是星期幾的啦 so easy的啦
Ⅳ java中一個月按周劃分
lz 你好
這個還是比較好實現
具體代碼如下(有詳細的注釋):
importjava.util.*;
//月份劃分類
publicclassMonthDivide{
privateintyear,month;//年份、月份
privateintweekend; //周數(第幾周)
privateintleapYear[]={0,31,28,31,30,31,30,31,31,30,31,30,31}; //閏年每月天數
privateintcommonYear[]={0,31,28,31,30,31,30,31,31,30,31,30,31}; //平年每月天數
privateintstart,end;
//輸入
publicvoidinputData(){
Scannerin=newScanner(System.in);
System.out.print("輸入年份:");
year=in.nextInt();
System.out.print("輸入月份:");
month=in.nextInt();
//System.out.print("輸入周數:");
//weekend=in.nextInt();
}
//判斷閏年
publicbooleanisLeapYear(intyear){
return(year%4==0&&year%100!=0)||(year%400==0);
}
//計算
publicvoidcount(){
intday,weekday,allDays=0;
//分別表示當月天數、當月一號是星期幾、1900.1.1到當前輸入日期之間的天數
day=isLeapYear(year)?leapYear[month]:commonYear[month];
if(weekend>(day==28?4:5)){
System.out.println("周數越界了!");
return;
}
//計算天數
for(inti=1900;i<year;i++){
allDays+=isLeapYear(i)?366:365;
}
for(inti=1;i<month;i++){
allDays+=isLeapYear(year)?leapYear[i]:commonYear[i];
}
//計算星期幾
weekday=1+allDays%7;
//計算第weekend周的開始和結束
if(weekend==1){
start=1;
end=8-weekday;
}
else{
start=(weekend-2)*7+(9-weekday);
end=start+6;
if(end>day)
end=day;
}
}
//設置weekend周數
publicvoidsetWeekend(intwk){
weekend=wk;
}
//以下三個是獲取屬性
publicintgetStart(){
returnstart;
}
publicintgetEnd(){
returnend;
}
publicintgetWeekend(){
returnweekend;
}
//main
publicstaticvoidmain(String[]args){
MonthDividemd=newMonthDivide();
md.inputData();
for(inti=1;i<=5;i++){
md.setWeekend(i);
md.count();
System.out.print(" 第"+md.getWeekend()+"周開始於"+md.getStart()+"號 結束至"+md.getEnd()+"號");
}
}
}
運行結果:
希望能幫助你哈
Ⅳ 怎麼用JAVA顯示某日的星期
用Calendar類,這樣來寫:
public
static
void
main(String[]
args)
{
//Calendar.getInstance()表示今天,換其他日期則today.set(2009,
3,
1);
//注意set(2009,
3,
1)中的3其實是4月,月數從0-11
Calendar
today
=
Calendar.getInstance();
//星期數,從星期天開始到星期六為0-7
System.out.println(today.get(Calendar.DAY_OF_WEEK));
//顯示一年的第幾天
System.out.println(today.get(Calendar.DAY_OF_YEAR));
//當然還可以顯示很多信息,月的第幾天,就是幾號,等等:
System.out.println(today.get(Calendar.DAY_OF_MONTH));
}
Ⅵ 急:請問在Java中輸入日歷的星期該怎麼算啊
Calender類裡面有方法可以算,你用API查一下吧。
還要自己寫啊,那算星期的話用格林威治時間推導一下然後除7取余星期就出來了。
Ⅶ java 星期幾
問題能不能描述地具體一點...
Ⅷ 用java編寫循環顯示星期日到星期六
String[] sstr = {"星期日","星期一","星期二","星期三","星期四","星期五","星期六"};
for(int i = 0; i < sstr.length; i++){
System.out.print(sstr[i] + " ");
}
Ⅸ java怎麼獲得當前時間的第幾個星期幾
Calendar calendar = Calendar.getInstance();
calendar.setTime(new Date());
System.out.println(calendar.get(Calendar.DAY_OF_WEEK));
System.out.println(calendar.get(Calendar.DAY_OF_WEEK_IN_MONTH));
Ⅹ java怎麼通過日期獲取星期幾
1、使用Calendar類
/**
* 獲取當前日期是星期幾<br>
*
* @param dt
* @return 當前日期是星期幾
*/
public static String getWeekOfDate(Date dt) {
String[] weekDays = {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
Calendar cal = Calendar.getInstance();
cal.setTime(dt);
int w = cal.get(Calendar.DAY_OF_WEEK) - 1;
if (w < 0)
w = 0;
return weekDays[w];
}
2、使用SimpleDateFormat格式化日期
Date date=new Date();
SimpleDateFormat dateFm = new SimpleDateFormat("EEEE");
dateFm.format(date);
註:格式化字元串存在區分大小寫
對於創建SimpleDateFormat傳入的參數:EEEE代表星期,如「星期四」;MMMM代表中文月份,如「十一月」;MM代表月份,如「11」;
yyyy代表年份,如「2010」;dd代表天,如「25」