字符串分为两大类
String类,创建之后不会再做修改和变动 immutable
StringBuffer StringBuilder类 创建之后允许在做更改和变化 StringBuilder是非线程安全的
注意再循环中使用String+=可能会带来效率问题
String类对象保存不可修改(immutable)的unicode字符序列
String类的下述方法能创建并返回一个新的String对象实例
cancat replace replaceAll substring toLowerCase toUpperCase trim toString
查找:endWith startsWith indexOf lastIndexOf
比较:equals equalsIgnoreCase.
字符及长度:charAt length
JAVA5增加了format函数 %1$,8.5f %序号$标识 宽度及精度转换放肆
%$中间的数字 是第几个参数的意思 上面的逗号表示千分位
8.5f表示宽度是8 小数点后面占5位数 f表示实数
除了Immutable特点外,还要注意String常量的内部化(interned)
StringBuffer类对象保存可修改的Unicode字符序列
StringBuffer类似,它效率高,不考虑线程安全性
构造方法
StringBuffer()
StringBuffer(int capacity)
StringBuffer(String initialString)
实现修改操作方法:append insert reverse setCharAt setLength
java.util.StringToken类提供了对字符串进行分割的功能
StringTokenizer(String str,String delim);
该类的重要方法
public int countTokens();//分割串的个数
public boolean hasMoreToken();//是否还有分割串
public String nextToken();//得到下一分割串
import java.util.*;
class TestStringTokenizer
{
public static void main(String[] args)
{
StringTokenizer st=new StringTokenizer("this is a Test"," ");//以文本字符分割
while(st.hasMoreTokens()) {
System.out.println(st.nextToken());
}
st=new StringTokenizer("253,197,546",",");
double sum = 0.0;
while(st.hasMoreTokens()) {
sum +=Double.parseDouble(st.nextToken());
}
System.out.println(sum);
}
}
yun
this
is
a
Test 996.0