Java基础入门之Calendar类和DateFormat类

Java进阶学习交流

共 3323字,需浏览 7分钟

 ·

2021-04-08 23:12

点击上方“Java进阶学习交流”,进行关注

后台回复“Java”即可获赠Java学习资料

黄沙百战穿金甲,不破楼兰终不还。

大家好,我是Java进阶者,今天小编带大家一起来学习Java技术基础!

一、Calendar类

1.Calendar从字面上的意思就是日历,在java中Calendar类是可以通过方法设置和读取显示年、月、日、时,分、秒等。当创建Calendar的对象时不可以使用new关键字,因为Calendar类它是一个抽象类,需要通过调用静态的方法getInstance()方法来获得一个Calendar的对象,再去调用其他的方法。

2.Calendar类方法如下图所示:

上面图片引自《菜鸟教程》

3.怎么通过Canledar类来获取计算机当前的年月日星期和时分秒的例子:

import java.util.Calendar;public class p1 {public static void main(String[] args) {        // TODO Auto-generated method stub        Calendar c = Calendar.getInstance();//获取Calendar对象        //获取当前的年        int year = c.get(c.YEAR);        //获取当前的月        int month = c.get(c.MONDAY)+1;        //获取当前的日        int day = c.get(c.DATE);        //获取时        int hour = c.get(c.HOUR);        //获取分        int minute = c.get(c.MINUTE);        //获取秒        int second = c.get(c.SECOND);        //获取当前是星期几(它是以周日为第一天)        int week = c.get(c.DAY_OF_WEEK)-1;        //设置年月日,时分秒是默认的当前值        Calendar c1 = Calendar.getInstance();        c1.set(2020, 5, 20);        System.out.println("当前的时间是: "+year+"年"+month+"月"+day+"日"+"\t星期"+week);        System.out.println("当前的时间是: "+hour+"时"+minute+"分"+second+"秒");        System.out.println("设置的年月日时间是: "+c1.getTime());    }}

运行的结果是:

从上面代码中,可以发现获取当前的月份时候,需要加一的原因是它的月份是从0开始的,所以需要加一。还有获取当前是星期几也是一样的,因为它是从周日为第一天。


二、DateFormat类

1.DateFormat类是把日期格式化转换成字符串。在Date类中表示日期和时间,打印时会默认时英文格式输出日期和时间,当转换成中文格式就需要DateFormat类。DateFormat类也是抽象类,不可以实例化。可以通过静态方法得到DateFormat类的实例对象。

2.DateFormat类的常用方法有:

该图片引自《C语言中文网的Java教程》

3.DateFormat类中定义四个常量值来当做参数传递给这些方法,包括了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 stub        Date 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));     }}

输出的结果是:


三、输入一个年份,判断是否是闰年

1.解题思路是:凡是不能被100整除但可以被4整除的年份,或能被400整数的年份是闰年,其余的年份不是闰年。

2.代码:

import java.util.Scanner;public class p3 {public static void main(String[] args) {        // TODO Auto-generated method stub        System.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+"不是闰年");        }    }}


四、总结

本文主要介绍了Calendar类、DateFormat类、如何判断闰年。

文中介绍了Calendar类的显示和设置日期和时间。DateFormat类主要是把日期格式转换成字符串的形式,英文转成中文的格式。

通过如何去判断的用户输入的年份是是不是闰年的例子帮助大家的理解。

我是Java进阶者,希望大家通过本文的学习,对你有所帮助!欢迎大家加我微信,有问题可以随时帮大家解决噢,交个朋友也好哇~

------------------- End -------------------

往期精彩文章推荐:

欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持

想加入Java学习群请在后台回复【入群

万水千山总是情,点个【在看】行不行

浏览 21
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报