java.lang.object 相关
介绍:通常Object类中的方法常被应用于javabean中,比如equals()、toString(),在你的bean中通过覆写这两个方法得到更加实用的功能
- toString()
在Object类中的toString()方法,只打印地址,bean中覆写之后得到相应的期望值 - equals()
在Object类中的equals()方法,默认比较的是地址值,bean中覆写用以比较其内容,此外,在使用此方法时需要注意避免产生空指针异常。
java.util.date 相关
其实还有一个日历类 java.util.calendar,用到不多不管。。。。
- 获取当前时间
Date time = new date();
- 获取当前时间毫秒值
Long longtime = time.gettime();
- 时间转换类的使用
*这里用到DateFormat与他的实现类SimpleDateFormatDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //时间转换为规定格式 String formatDate = dateFormat.format(new Date()); //将规定格式的时间字符串转换为标准时间对象 Date parseDate = dateFormat.parse(formatDate);
java.util.system 相关
- 获取当前时间:currentTimeMillis()
long time = System.currentTimeMillis();
- 数组拷贝:arraycopy(),系统及操作,性能很高的
arraycopy(源数组,起始位置,目标数组,起始位置, 复制长度)Integer[] arr = {0,1,2,3,4,5,6,7,8,9}; Integer[] arrCopy = {9,8,7,6,5}; System.arraycopy(arr,0,arrCopy,0,5);
此处需要注意,在数组复制时,目标数组的长度必须大于等于复制长度,否则,会报脚标越界异常
String、StringBuilder、StringBuffer 甜蜜三角
- String : 字符串为常量,值创建后不能更改,所以在每次拼接字符串时,都需要创建一个新的对象,费时费空间。
- StringBuilder:可变字符序列,类似于字符串缓冲区,默认16字符空间,看源码,扩展机制应该也是 原长度*2+2.但是从源码中也可以看到,没有synchronized关键字,也就是说,StringBuilder虽然高效,但是确实线程不安全的。
此处还需要知道两个方法:- append():字符串扩展
- toString():将StringBuilder对象转换为不可变的String对象
- StringBuffer:原理同于StringBuilder,两者区别在于StringBuffer源码中多了synchronized关键字,线程安全,所以速度相对较慢。
包装类
- 此处需要了解装箱与拆箱,从jdk1.5开始,就变为自动拆箱与自动装箱