7.1 包装类
java中有8中基本类型,对应有八种包装类
作用:包装类中封装了该类型常用的属性和方法,以方便操作。
byte---->Byte
short--->Short
int--->Integer
long---->Long
float---->Float
double---->Double
char---->Character
boolean---->Boolean
装箱:将基本数据类型转换成包装类,经常通过构造方法完成。
Integer i = new Integer(123);
拆箱:将包装类转换为基本数据类型。xxxValue()
int i2 = i.intValue();
JDK1.5之后支持自动装箱和自动拆箱
Integer i=123;//装箱
int i2=i;//拆箱
7.2 == 及equal区别:
==比较的地址引用是否相同
equals比较的是内容是否相同
如果地址引用相同了,内容一定相同;但内容相同,地址引用不一定相同
7.3 字符串:
java.lang.String是不可变的字符序列,本质上是通过字符数组实现的,所以下标从0开始
7.4 StringBuffer和StringBulider:
StringBuffer可以看作增强的String,自带缓冲区
String/StringBuffer/StringBuilder的区别
String:不可变的字符序列
StringBuffer:可变的字符序列,基于线程安全的,效率较低
StringBuilder:可变的字符序列,非线程安全的,效率较高
常用的方法:
append(String str):追加字符串
insert(int offset,char c): 在定义位置插入字符
reverse():反转
....
7.5 java日期处理:
7.5.1 java.util.Date:
java.util.Date:日期
java.sql.Date是java.util.Date的子类
常用的构造方法:
Date():创建当前日期
Date(int year, int month, int date) 创建指定日期的对象,已过时
常用的方法
getYear():获取日期中的年份
getMonth():获取日期的月份,取值返回0~11
getDate():获取日期部分
.....
Date date = new Date();
7.5.2 DateFormat和SimpleDataFormat:
java.text.DateFormat类:是一个抽象类,可以对日期进行格式化输出或转换
java.text.SimpleDateFormat继承类DateFormat类
常用的构造方法
SimpleDateFormat(String pattern)
用给定的模式和默认语言环境的日期格式符号构造 SimpleDateFormat。
yyyy:年份
MM:月份
dd:日期
HH:小时(24进制) hh:小时(12进制)
mm:分钟
ss:秒
常用的方法:
format(Date date):将日期按照指定的格式转换为字符串
parse(String DateStr):将字符串转换为日期
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
7.5.3 java.util.Clendar:
java.util.Calendar:日历,抽象类
常用的属性:
YEAR:代表年份
MONTH:代表月份
DATE:日期
DAY_OF_MONTH:get 和 set 的字段数字,指示一个月中的某天。
DAY_OF_WEEKget 和 set 的字段数字,指示一个星期中的某天。
DAY_OF_YEAR get 和 set 的字段数字,指示当前年中的天数
WEEK_OF_MONTH get 和 set 的字段数字,指示当前月中的星期数。
WEEK_OF_YEAR get 和 set 的字段数字,指示当前年中的星期数
....
常用的方法:
getInstance():获取日历的实例
get(int field):获取日历中指定日期部分
set(int field,int value):设置日历中的指定部分
add(int field,int value):增加日期中的指定部分
getActualMaximum(int field) 给定此 Calendar 的时间值,返回指定日历字段可能拥有的最大值。
7.6 Math和Random类:
Math类用于算术计算
abs(..):计算绝对值
floor()
round()
pow(...)
sqrt()
Randrom类用于生产随机数
nextInt(int seed)生成指定范围的随机数
7.7 枚举:
枚举是从JDK1.5之后新增的特性, 枚举本质上也是一个类,在枚举中定义值都是常量,默认的修饰符public static final
如何定义枚举
修饰符 enum 枚举名{
值1,值2....;
}