一. 基本数据类型的包装类(以int和Integer为例)
概述
基本数据类型的创建和使用非常方便,但是我们无法通过基本数据类型调用一些功能来操作这些数据。
现在将这些基本数据类型封装成一个类,就可以在这个类中定义一些专门操作这些数据的功能。
这种类就是基本数据类型的包装类。
## 1.1 基本类型与包装类的对应关系
byte Byte
short Short
int Integer
long Long
float Float
double Double
char Character
boolean Boolean
## 1.2 装箱和拆箱
装箱:基本类型->包装类
1、使用包装类的构造函数
* new Integer(int)
* new Integer(String):当字符串不是整数形式的字符串时会发生NumberFormatException异常
2、使用包装类的静态方法
* valueOf(int)
* valueOf(String):当字符串不是整数形式的字符串时会发生NumberFormatException异常
拆箱:包装类->基本类型
1、使用包装类的成员方法
* intValue(Integer)
## 1.3 自动装箱和自动拆箱
jdk1.5之后,基本类型与其包装类可以实现自动的转换
自动装箱:它隐含着new Integer(t);
int t = 3;
Integer i = t;
自动拆箱:它隐含着i.intValue();
Integer i = new Integer(666);
int k = i;
## 1.4 包装类的功能
获取指定类型的最大最小值
Integer.MAX_VALUE
Integer.MIN_VALUE
常用方法:
1、max(int,int)
2、min(int,int)
3、toBinaryString(int)
4、toOctalString(int)
5、toHexString(int)
## 1.5 基本类型/包装类与字符串的转换
1、基本类型/包装类->String
* 空串的拼接
* 包装类的静态toString(数据)方法
* String的静态valueOf(数据)方法
2、String->基本类型/包装类
* 包装类的构造函数
* 包装类的静态valueOf(String)方法
* 包装类的静态parseXxx(String)方法
Math
概述:Math是一个封装了一系列数学运算和三角函数相关的类
Date
概述:表示特定的瞬间,是一个毫秒值
构造函数
1、new Date()
2、new Date(long)
常用方法
1、getTime()
2、compareTo(date)
3、after(date)
4、before(date)
概念:它是DateFormat的子类,专门用于对Date进行格式化和解析
常见的时间模式:
1、y:年
2、M:月
3、d:日
4、H:24小时制的小时数
5、m:分钟
6、s:秒
## 格式化
将Date日期以指定的格式按字符串输出
format(Date)
## 解析
将已经格式化后的日期字符串解析成一个Date对象
parse(String)
注:
要解析的日期字符串的格式必须与SimpleDateFormat指定的格式一致,
否则会发生ParseException
# Calendar
概念:一个操作日历字段的抽象类
对象的获取:getInstance()
常用方法
1、getTime():获取Date对象
2、getTimeInMillis():获取毫秒值,同Date的getTime(),同System.currentTimeMillis()
3、set(field,value):对指定的时间域设置值
4、set(year,month,date,hour,minute,second)
5、get(field):获取指定时间域上的值
6、add(field,amount):为指定的时间域设置偏移值