String、StringBuffer、StringBuilder的异同:
String:不可变的字符序列、底层使用char[]数组存储
StringBuffer:可变的字符序列、线程安全、效率低、底层使用char[]数组存储
StringBuilder:可变的字符序列、线程不安全、效率高、底层使用char[]数组存储
StringBuffer:
使用StringBuffer str = new StringBuffer(),底层默认新建一个长度为16的char[]数组
使用append进行扩容,默认扩容为原来容量的两倍加2,同时将原有数组的元素复制到新的数组中
StringBuffer的方法:
StringBuffer append(xxx): 提供很多append()方法,用于进行字符串的拼接 StringBuffer delete(int start,int end):删除指定位置的内容 StringBuffer replace(int start,int end,String str):把[start,end)位置置换为str. StringBuffer insert(int offset,xxx):在指定位置插入xxx StringBuffer reverse():把当前字符序列逆转 public indexOf(String str):返回指定字符串在StringBuffer中的位置 public String subString(int start,int end):返回从start开始到end结束的子字符串 public char charAt(int num):返回指定位置的字符 public void setCharAt(int num,char ch):将指定位置的字符改成新的字符
java.util.Date、java.sql.Date:
两个方法:
toString():显示当前的年、月、日、时、分、秒 getTime():获取当前对象对应的时间戳,也就是距离1970年0时0分0秒的毫秒数
两个构造器:
Date():创建一个对应当前时间的Date对象 Date(long xxx):创建指定毫秒数的Date对象
java.sql.Date对应着数据库中日期类型的变量