javaEE复习

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与他的实现类SimpleDateFormat
    DateFormat 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开始,就变为自动拆箱与自动装箱

猜你喜欢

转载自blog.csdn.net/Carlson_Chis/article/details/84136927