字符串和日期
1.字符串:
*字符串可以分为两类:
String s = "";
StringBuff sb = new StringBuffer();
final int N = 100;
long t0 =System.currentTimeMillis();
for(int i; i<N;i++) s+=a;
long t1 =System.currentTimeMillis();
for(int i; i<N;i++) sb.append(a);
long t2 =System.currentTimeMillis();
System.out.println(t1-t0);
System.out.println(t2-t1);
String类:
创建之后不会再做修改与变动,即immutable
StrigBuffer,StringBuilder类
创建之后允许改变与变化
*特别注意:
在循环中使用String的+=可能会带来效率问题
String类对象保存不可修改的Unicode字符序列
*String类的下述方法能创建并返回一个新String对象实例:concat,replace,replaceAll,substring,toLowerCase,toUpperCase,trim,toString
*查找:endsWith,startsWith,indexOf,lastIndexOf
*比较:equals,equalslgnoreCase
*字符与长度:charAt,length
*需要注意内部化问题即一样的字符串常量是合同的(指向同一个引用)例如:“abc” ==“abc” 但是“abc” != new String(“abc”)
StringBuff类
*保存了可以修改的Unicode字符序列
*StringBuilder类似,它更加高效,因为不考虑线程安全性
*构造方法
StringBuffer()
StringBuffer(int capacity)
StringBuffer(String initialString)
*实现修改操作的方法:
append,insert,reverse,setCharAt,setLength.
字符串的分割
*java.util.StringToken类提供了对字符串进行分割的功能
*构造
StringTokenizer(String str, String delim);