首页 > 代码库 > 基础笔记4(包装类,时间date. calendar

基础笔记4(包装类,时间date. calendar

1.包装类 基本类型和对象。

编译器会对基本类型和包装类进行自动拆箱,装箱处理

Interger  i=5;

int i=new Interger(4);

一个缓存问题:以便提高效率

integer i=1345;

integer i2=1234;

i==i2;          //flase

i.equals(i2);  //ture

integer i3=13;

integer i4=13;

i3==i4;          //true

i3.equals(i4);  //true
虚拟机对于【-128,127】之间的数会当作基本类型处理。类似string常量池。

 

2.时间处理。date

以1970.1.1.零时间为标准距离现在的毫秒数

new Date()//无参的构造方法是当前时间的毫秒
new Date(有参数)//参数对应的时间,都是以标准时间为准的。

  

3.时间和字符串之间的转换类:

3.1将时间转换为某种格式:

simpleDateFormate

大H是0-23小时,小h是1—12小时
Date now = new Date();
		SimpleDateFormat simpleDateFormat = new SimpleDateFormat(
				"yyyy-MM-dd HH:mm:ss;;y-M-d H:m:s");//如果一个字母缺省不会补0.比如5,不会是05.
// 其实只是将字符串中字符用数字替换
		System.out.println(now);
		String format = simpleDateFormat.format(now);
		System.out.println(format);
输出:
Mon Nov 14 00:05:22 CST 2016
2016-11-14 0:05:22;;16-11-14 0:5:22

3.2将某种格式的时间字符串转换成时间对象:

SimpleDateFormat simpleDateFormat = new SimpleDateFormat(
				"yyyy-MM-dd HH:mm:ss");//大H是0-23小时,小h是1—12小时。在这么使用貌似一样
		try {
			Date oldDate = simpleDateFormat.parse("2014-2-22 23:3:3");//将这种类型字符串转换为date类型的时间
			System.out.println(oldDate);

4.calendar:日期或者日历类; 时间(数字)与日期转换。抽象类,子类GregorianCalendar(格里利【公历】)(http://blog.csdn.net/joyous/article/details/9630893)

月(数字0开始,代表从1月开始

星期(数字1开始,代表 从星期日 ,一,二。。。)

类将一些日期(星期月份)设置成常量数字。

4.1一般使用calendar的子类:一般用于日期设置和获取。

Calendar calendar = Calendar.getInstance();
		// Calendar calender2=new GregorianCalendar();
		// SimpleDateFormat oldSimpleformat = new SimpleDateFormat(
		// "yyyy-MM-dd HH:mm:ss;;y-M-d h:m:s");
		calendar.set(2014, 2, 3, 13, 0);// 参数表示年,月,日,时,分
		calendar.set(Calendar.YEAR, 2016);
		// calendar.setTime(now);
		System.out.println(calendar.get(Calendar.MONTH));
		System.out.println(oldSimpleformat.format(calendar.getTime()));
		calendar.set(Calendar.MONTH, Calendar.JANUARY);// 月份是从0开始第一月
		// 等同与calendar.set(Calendar.MONTH,0);

		System.out.println(oldSimpleformat.format(calendar.getTime()));
		System.out.println(calendar.get(Calendar.DAY_OF_WEEK));// 周几从1开始并且1是周日,2才是周一
		System.out.println(calendar.getTime());
		// 日期计算
		calendar.add(Calendar.DATE, -4);// 负数表示减去多少
		System.out.println(calendar.getTime());

  输出

2//2代表了三月份
2016-03-03 13:00:11;;16-3-3 1:0:11
2016-01-03 13:00:11;;16-1-3 1:0:11
1//一周的第一天,周日
Sun Jan 03 13:00:11 CST 2016
Wed Dec 30 13:00:11 CST 2015

  获取月份的天数:

getActualMaximum(Calendar.Date);

基础笔记4(包装类,时间date. calendar