JAVA学习第十一天-装箱拆箱+日期类+Calendar类使用实例代码

自动装箱、拆箱

装箱:把基本类类型转换为包装类类型
拆箱:把包装类类型转换为基本类类型
自动装箱:把基本类型int直接赋值给包装类类型Integer
自动拆箱:把 Integer类型直接赋值给int类型

tips:
只要是对象,在使用前就最好先做不为Null的判断,避免为空指针;

日期类: data,SimpleDataFormat,Calendar

Public Data();
Public Data(long data);long 是毫秒为单位的,起始时间是1970年1月1号的0时0分0秒,此处的时间是在此基础上加上 long data;

遇到java.util.data无法导包的问题
目前没有解决

data输出的时间不利于阅读,可以用:
SimpleDataFormat

Calendar类

是一个抽象类,可以为在某一特定时刻和一组之间的转换的方法
Calendar rightNow = Calendar.getInstance();
get方法获得Calendar的值;
add可以对Calendar的返回值YEAR、MONTH等进行修改;
set方法设置Calendar中的值;

month值是从0开始计算的,赋值与实际值差了1;

以下演示一下应用:
代码1:

        public static void main(String[] args) {
    
    
        //获取当前日历时间
            Calendar c = Calendar.getInstance();
//            int year = c.get(Calendar.YEAR);
//            int month = c.get(Calendar.MONDAY)+1;
//            int day = c.get(Calendar.DATE);
//            System.out.println(year+"年"+month+"月");
            c.add(Calendar.YEAR,-3);//对获取的年份-3
            c.set(2020,1,11);//赋值新的日历信息
            //获取对象c中的具体值
            int year = c.get(Calendar.YEAR);
            int month = c.get(Calendar.MONDAY)+1;
            int day = c.get(Calendar.DATE);
            System.out.println(year+" "+ month +" "+day);

代码2:获得任意一年的2月份有多少天

   			1、获得年份
            Scanner sc =new Scanner(System.in);
            System.out.println("请输入年份");
            int i = sc.nextInt();
//            2、对象赋值为这一年的3月第一天
            Calendar ca = Calendar.getInstance();
            ca.set(i,2,1);
//            3、对象往前推一天
            ca.add(Calendar.DATE,-1);
//            4、获取这天的日期并输出
            int day = ca.get(Calendar.DATE);
            System.out.println(i+"年2月份一共有"+day+"天");

猜你喜欢

转载自blog.csdn.net/weixin_52723971/article/details/110431588
今日推荐