基本类型包装类、Date、SimpleDateFormat、Calender(Java学习第二十八天)

装箱:把基本数据类型转换为对应的包装类型;

拆箱:把包装类型转换为对应的基本数据类型

代码解释如下:

建议拆箱的时候,判断是否为null

package day28;

public class IntegerDemo {
    public static void main(String[] args) {
        //封箱
        Integer i = Integer.valueOf(99); //手动方式
        Integer ii = 100; //自动封箱,其实就是省略了Integer.valueOf(100)

        //拆箱,如果想要对i进行加减乘除
        i = i.intValue() + 55;  //手动拆箱
        i += 66; //自动拆箱,同上省略了一部分

        //注意,拆箱的时候,如果i的值为null;就会报错 ,也不能做运算。
        i = null;
        //System.out.println(i.intValue()); //NullPointerException
    }
}

Date表示一个特定的时间,精确到毫秒

方法名说明
public Date()分配一个Date对象,并初始化,以便它代表它被分配的时间,精确到毫秒
public Date(long date)分配一个Date对象,并将其初始化为表示从标准时间起指定的毫秒数
package day28;

import java.util.Date;

public class DateDemo {
    public static void main(String[] args) {
        //当前时间
        Date d1 = new Date();
        System.out.println(d1);
        //Wed Dec 22 22:43:03 CST 2021
        
        //给出时间戳 ,获取当时时间
        Date d2 = new Date(0);
        System.out.println(d2);
    }
}

SimpleDateFormat格式化日期

对应关系Y 年  M 月 d日 H时 m分 s秒

方法名说明
public SimpleDateFormat构造一个SimpleDateFormat,使用默认的时间格式
public SimpleDateFormat(String pattern)构造一个SimpleDateFormat使用给定的时间格式

格式化(从Date到String)

public final String format(Date date) 将时间格式化为日期/时间字符串

解析(从String到Date)

public Date parse(String source) 从给定字符串的开始解析文本生成日期

package day28;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class DateDemo {
    public static void main(String[] args) throws ParseException {
        //Date 到String
        //当前时间
        Date d1 = new Date();
        //默认格式
        SimpleDateFormat sdf = new SimpleDateFormat();
        String s1 = sdf.format(d1);
        System.out.println(s1);
        //2021/12/22 下午10:58
        //特定格式
        SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String s2 = sdf1.format(d1);
        System.out.println(s2);


        //String 到Date
        String ss = "2008-11-11 00:00:00";
        SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        Date dd = sdf2.parse(ss);
        System.out.println(dd);
    }
}

日历的方法Calender

import java.util.Calendar;

//Calendar为某一时刻或者一组字段之间的转换提供了方法。
//Calendar提供了一个类方法getInsatance来获取其对象  语法如下 Calendar rightNow = Calendar.getInstance()
public class CalendarDemo {
    public static void main(String[] args) {
        //获取对象
        Calendar c = Calendar.getInstance(); //多态的形式获取对象
        System.out.println(c); //注意月份为0-11,并不是0-12
        //通过public int get(int field)来获取自己想要的值
        //如下获取年月日
        int year = c.get(Calendar.YEAR);
        int month = c.get(Calendar.MONTH) + 1; //注意这里的月份需要+1
        int date = c.get(Calendar.DATE);
        System.out.println(year+"-"+month+"-"+date);

        //add方法,用法如下
        c.add(Calendar.YEAR,+7);
        System.out.println(c.get(Calendar.YEAR));
        //set方法,设置日历的年月日
        c.set(2013,12,13); //注意如果这里s
        int year1 = c.get(Calendar.YEAR);
        int month1 = c.get(Calendar.MONTH) + 1; //注意这里的月份需要+1
        int date1 = c.get(Calendar.DATE);
        System.out.println(year1+"-"+month1+"-"+date1);

    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值