Java基礎(chǔ)入門之Calendar類和DateFormat類
后臺(tái)回復(fù)“Java”即可獲贈(zèng)Java學(xué)習(xí)資料
大家好,我是Java進(jìn)階者,今天小編帶大家一起來學(xué)習(xí)Java技術(shù)基礎(chǔ)!
一、Calendar類
1.Calendar從字面上的意思就是日歷,在java中Calendar類是可以通過方法設(shè)置和讀取顯示年、月、日、時(shí),分、秒等。當(dāng)創(chuàng)建Calendar的對(duì)象時(shí)不可以使用new關(guān)鍵字,因?yàn)镃alendar類它是一個(gè)抽象類,需要通過調(diào)用靜態(tài)的方法getInstance()方法來獲得一個(gè)Calendar的對(duì)象,再去調(diào)用其他的方法。
2.Calendar類方法如下圖所示:



上面圖片引自《菜鳥教程》
3.怎么通過Canledar類來獲取計(jì)算機(jī)當(dāng)前的年月日星期和時(shí)分秒的例子:
import java.util.Calendar;public class p1 {public static void main(String[] args) {// TODO Auto-generated method stubCalendar c = Calendar.getInstance();//獲取Calendar對(duì)象//獲取當(dāng)前的年int year = c.get(c.YEAR);//獲取當(dāng)前的月int month = c.get(c.MONDAY)+1;//獲取當(dāng)前的日int day = c.get(c.DATE);//獲取時(shí)int hour = c.get(c.HOUR);//獲取分int minute = c.get(c.MINUTE);//獲取秒int second = c.get(c.SECOND);//獲取當(dāng)前是星期幾(它是以周日為第一天)int week = c.get(c.DAY_OF_WEEK)-1;//設(shè)置年月日,時(shí)分秒是默認(rèn)的當(dāng)前值Calendar c1 = Calendar.getInstance();c1.set(2020, 5, 20);System.out.println("當(dāng)前的時(shí)間是: "+year+"年"+month+"月"+day+"日"+"\t星期"+week);System.out.println("當(dāng)前的時(shí)間是: "+hour+"時(shí)"+minute+"分"+second+"秒");System.out.println("設(shè)置的年月日時(shí)間是: "+c1.getTime());}}
運(yùn)行的結(jié)果是:

從上面代碼中,可以發(fā)現(xiàn)獲取當(dāng)前的月份時(shí)候,需要加一的原因是它的月份是從0開始的,所以需要加一。還有獲取當(dāng)前是星期幾也是一樣的,因?yàn)樗菑闹苋諡榈谝惶臁?/span>
二、DateFormat類
1.DateFormat類是把日期格式化轉(zhuǎn)換成字符串。在Date類中表示日期和時(shí)間,打印時(shí)會(huì)默認(rèn)時(shí)英文格式輸出日期和時(shí)間,當(dāng)轉(zhuǎn)換成中文格式就需要DateFormat類。DateFormat類也是抽象類,不可以實(shí)例化??梢酝ㄟ^靜態(tài)方法得到DateFormat類的實(shí)例對(duì)象。
2.DateFormat類的常用方法有:

該圖片引自《C語言中文網(wǎng)的Java教程》
3.DateFormat類中定義四個(gè)常量值來當(dāng)做參數(shù)傳遞給這些方法,包括了FULL表示完整的格式、LONG表示長的格式、MEDIUM表示普通格式、SHORT表示短格式的例子:
import java.text.DateFormat;import java.util.Date;public class p2 {public static void main(String[] args) {// TODO Auto-generated method stubDate d=new Date();//定義四種格式DateFormat f,l,m,s;//Full格式f=DateFormat.getDateInstance(DateFormat.FULL);//Long格式l=DateFormat.getDateInstance(DateFormat.LONG);//medium格式m=DateFormat.getDateInstance(DateFormat.MEDIUM);//short格式s=DateFormat.getDateInstance(DateFormat.SHORT);//格式化日期System.out.println("Full格式:"+f.format(d));System.out.println("Long格式:"+l.format(d));System.out.println("medium格式:"+m.format(d));System.out.println("short格式:"+s.format(d));}}
輸出的結(jié)果是:

三、輸入一個(gè)年份,判斷是否是閏年
1.解題思路是:凡是不能被100整除但可以被4整除的年份,或能被400整數(shù)的年份是閏年,其余的年份不是閏年。
2.代碼:
import java.util.Scanner;public class p3 {public static void main(String[] args) {// TODO Auto-generated method stubSystem.out.print("請輸入年份:");Scanner scan = new Scanner(System.in);int year = scan.nextInt();if(year%4==0&&year%100!=0||year%400==0){System.out.println("你輸入的"+year+"年是閏年");}else{System.out.println("你輸入的"+year+"不是閏年");}}}

四、總結(jié)
本文主要介紹了Calendar類、DateFormat類、如何判斷閏年。
文中介紹了Calendar類的顯示和設(shè)置日期和時(shí)間。DateFormat類主要是把日期格式轉(zhuǎn)換成字符串的形式,英文轉(zhuǎn)成中文的格式。
通過如何去判斷的用戶輸入的年份是是不是閏年的例子幫助大家的理解。
我是Java進(jìn)階者,希望大家通過本文的學(xué)習(xí),對(duì)你有所幫助!歡迎大家加我微信,有問題可以隨時(shí)幫大家解決噢,交個(gè)朋友也好哇~
------------------- End -------------------
往期精彩文章推薦:

歡迎大家點(diǎn)贊,留言,轉(zhuǎn)發(fā),轉(zhuǎn)載,感謝大家的相伴與支持
想加入Java學(xué)習(xí)群請?jiān)诤笈_(tái)回復(fù)【入群】
萬水千山總是情,點(diǎn)個(gè)【在看】行不行
