第一個(gè)要求很簡(jiǎn)單的,就是先定制一個(gè)年月日字符型格式的日期,然后將它解析成一個(gè)日期對(duì)象;再設(shè)置一個(gè)只顯示星期幾的日期的格式,將上面的日期對(duì)象格式輸出就行了。
第二個(gè)要求也不難,你是想對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)操作,我這里就用數(shù)組給你模擬一下吧。我定義了兩個(gè)int變量SHANGBAN,XIUXI,對(duì)應(yīng)你的兩個(gè)字段值1和0,然后我對(duì)8月的數(shù)據(jù)進(jìn)行了操作(我是假設(shè)雙休日休息,對(duì)應(yīng)今年的這個(gè)月),根據(jù)輸入的年月日字符,用substing提取了各個(gè)字段,然后進(jìn)行相應(yīng)查找就行了。你可以用各個(gè)字段到數(shù)據(jù)庫(kù)中相應(yīng)的那一天查詢對(duì)應(yīng)的值就ok了。
下面是我的程序:
import java.text.SimpleDateFormat; import java.util.Date; import java.lang.String; import java.lang.Integer; public class DateExample{ public static void main(String[] args){ int SHANGBAN = 1; //上班 int XIUXI = 0; //休息 int[] AugDay = { //八月份數(shù)據(jù) SHANGBAN,SHANGBAN,SHANGBAN,SHANGBAN,SHANGBAN,XIUXI,XIUXI, SHANGBAN,SHANGBAN,SHANGBAN,SHANGBAN,SHANGBAN,XIUXI,XIUXI, SHANGBAN,SHANGBAN,SHANGBAN,SHANGBAN,SHANGBAN,XIUXI,XIUXI, SHANGBAN,SHANGBAN,SHANGBAN,SHANGBAN,SHANGBAN,XIUXI,XIUXI, SHANGBAN,SHANGBAN,SHANGBAN }; // Create a date formatter that can parse dates of the form yyyy-MM-dd. SimpleDateFormat bartDateFormat1 = new SimpleDateFormat("yyyy-MM-dd"); // Create a string containing a text date to be parsed. String dateStringToParse = "2005-8-10"; //可以改成接受輸入 try { Date date = bartDateFormat1.parse(dateStringToParse); SimpleDateFormat bartDateFormat2 = new SimpleDateFormat("EEEE"); System.out.println(dateStringToParse + " " +bartDateFormat2.format(date)); int year = Integer.parseInt(dateStringToParse.substring(0,4)); int month = Integer.parseInt(dateStringToParse.substring(5,6)); int day = Integer.parseInt(dateStringToParse.substring(7,9)); if(month == 8){ //假如輸入的是8月份的話(這里只是演示,指的是今年8月,你可以按你的需要修改) if(AugDay[day-1] == SHANGBAN){ System.out.println("今天上班"); } else{ System.out.println("今天休息"); } } } catch (Exception ex){ System.out.println(ex.getMessage()); } } }
輸入時(shí)間是2005-8-10,只用了八月的數(shù)組里的值來顯示大體的意思,你完全可以修改滿足你的需要。最后顯示結(jié)果為:
2005-8-10 星期三 今天上班
好了,應(yīng)該很清楚了吧,加油,也感謝你的支持!
I LOVE JAVA! |