IDC

Java基础入门之Calendar类和DateFormat类

作者:admin 2021-04-07 我要评论

大家好,我是Java进阶者,今天小编带大家一起来学习Java技术基础! 一、Calendar类 1.Calendar从字面上的意思就是日历,在java中Calendar类是可以通过方法设置和...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)

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

一、Calendar类

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

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

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

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

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

运行的结果是:

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

二、DateFormat类

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

2.DateFormat类的常用方法有:

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

三、DateFormat类

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

2.DateFormat类的常用方法有:

  1. import java.text.DateFormat; 
  2. import java.util.Date
  3. public class p2 { 
  4. public static void main(String[] args) { 
  5.         // TODO Auto-generated method stub 
  6.         Date d=new Date(); 
  7.         //定义四种格式 
  8.         DateFormat f,l,m,s; 
  9.         //Full格式 
  10.         f=DateFormat.getDateInstance(DateFormat.FULL); 
  11.         //Long格式 
  12.         l=DateFormat.getDateInstance(DateFormat.LONG); 
  13.         //medium格式 
  14.         m=DateFormat.getDateInstance(DateFormat.MEDIUM); 
  15.         //short格式 
  16.         s=DateFormat.getDateInstance(DateFormat.SHORT); 
  17.         //格式化日期 
  18.         System.out.println("Full格式:"+f.format(d)); 
  19.         System.out.println("Long格式:"+l.format(d)); 
  20.         System.out.println("medium格式:"+m.format(d)); 
  21.         System.out.println("short格式:"+s.format(d));  
  22.     } 

输出的结果是:

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

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

2.代码:

  1. import java.util.Scanner; 
  2. public class p3 { 
  3. public static void main(String[] args) { 
  4.         // TODO Auto-generated method stub 
  5.         System.out.print("请输入年份:"); 
  6.         Scanner scan = new Scanner(System.in); 
  7.         int year = scan.nextInt(); 
  8.         if(year%4==0&&year%100!=0||year%400==0){ 
  9.             System.out.println("你输入的"+year+"年是闰年"); 
  10.         }else
  11.             System.out.println("你输入的"+year+"不是闰年"); 
  12.         } 
  13.     } 

五、总结

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

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

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

我是Java进阶者,希望大家通过本文的学习,对你有所帮助!


本文转载自网络,原文链接:https://mp.weixin.qq.com/s/SVUMdXzgwdOT4V7oq9eAkQ

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • 太棒了!Python和Excel过了这么久终于

    太棒了!Python和Excel过了这么久终于

  • Java编程内功-数据结构与算法「线索化

    Java编程内功-数据结构与算法「线索化

  • 在Java中使用异步编程

    在Java中使用异步编程

  • Kafka性能篇:为何Kafka这么"

    Kafka性能篇:为何Kafka这么"

腾讯云代理商
海外云服务器