装箱:把基本数据类型转换为对应的包装类型;
拆箱:把包装类型转换为对应的基本数据类型
代码解释如下:
建议拆箱的时候,判断是否为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);
}
}