高琪java300集可視化日曆

高老師java300集中經常使用類的介紹中有可視化日曆實驗 本身嘗試寫了下,主要是爲了瞭解Date類, SimpleDateFormat類,Calendar類。java

 1 package GaoQiJava300Study.Eight;  2 
 3 import java.text.ParseException;  4 import java.text.SimpleDateFormat;  5 import java.util.Calendar;  6 import java.util.Date;  7 import java.util.GregorianCalendar;  8 import java.util.Scanner;  9 
10 public class TestCalender2 { 11     public static void main(String[] args) throws ParseException { 12         System.out.println("請輸入日期(格式爲:2019-4-27)"); 13         Scanner input=new Scanner(System.in); 14         String indate=input.nextLine();//輸入字符串(日期)
15 
16         SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd");// 把時間對象轉化成指定格式的字符串。反之,把指定格式的字符串轉化成時間對象
17         Date date= simpleDateFormat.parse(indate);//時間類
18 
19         System.out.println("您剛剛輸入的日期是 "+simpleDateFormat.format(date));//這裏能夠直接輸出indate
20 
21         System.out.println("日\t一\t二\t三\t四\t五\t六"); 22         GregorianCalendar calendar=new GregorianCalendar(); 23         calendar.setTime(date);//日曆類
24 
25         int day=calendar.get(Calendar.DAY_OF_MONTH);//當前是這個月第幾天
26         calendar.set(Calendar.DATE, 1);//將日曆的時間從1號開始計算
27         int maxday=calendar.getActualMaximum(Calendar.DAY_OF_MONTH);//每月有多少天
28         int spaceday=calendar.get(Calendar.DAY_OF_WEEK); 29 
30         //限定每月第一天的位置
31         for(int i=1;i<spaceday;i++){ 32             System.out.print("\t"); 33  } 34         //輸出
35         for(int i=1;i<=maxday;i++){ 36 
37             if(i==day) 38  { 39                 System.out.print("*"); 40  } 41             System.out.print(""+i+"\t"); 42  calendar.set(Calendar.DATE, i); 43             //每週六就換行
44             int zhouliu=calendar.get(Calendar.DAY_OF_WEEK); 45             if(zhouliu==7){ 46  System.out.println(); 47  } 48  } 49  } 50 }

實驗結果spa

相關文章
相關標籤/搜索