得到子串:"unhappy".substring(2)-->"happy"(截取从indexId开始到结束的串)
"emptiness".substring(20)-->""(返回空串)
"hamburger".substring(4,8)-->"urger"
"hamburger".substring(4, 20 )-->" java.lang.StringIndexOutOfBoundsException "异常
对于 java .lang. StringBuffer / StringBuilder 都相同用法!
② java .lang. String . c[color=green] oncat( String appendStr)[/color]尾连接子串
"cares".concat(s)-->"caress"
"".concat("hello")-->"hello"
"to".concat("get").concat("her")-->"together"
这个方法只有 String 类里有
③ java.lang.String.charAt(int index):char (根据index取得对应位置的字母)
"hello".charAt(4)-->‘o’有可能抛出异常IndexOutOfBoundsException
④ java .lang. String . lenght() 这个就没什么可说了,但别忘记数组对象没有这个函数
⑤ java .lang. String . contentEquals (StringBuffer compStr):boolean
如果比较的 String 与compStr里的内容完全一致的话就返回true
⑥ java.lang.String.startsWith(String prefix):boolean
java.lang.String.endsWith(String suffix):boolean
就判断一个字符串是否以串开头、结尾
⑦ java .lang. String . indexOf ( String str)/ lastIndexOf ( String str)
取得第一次/最后一次匹配str的位置
⑧ java .lang. String . split ( String regEx): String []
根据正则表达式regEx来切割字符串
⑨ java .lang. String .toUpperCase()/toLowerCase把串都变成大写/小写
⑩ java .lang. String .toCharArray():char[]把串打散成字符数组
�7�6 public String intern() 当且仅当 string 1.equals( string 2)
�7�7 public String replaceAll ( String regex, String replacement)/replaceFirst( String oldStr, String newStr)
替换字符串
�7�8java.lang.String.trim()去除字符串的两端空格符
Ÿ
它有两种形式,第一种是:String substring(int startIndex)
第二种是:String substring(int startIndex,int endIndex)
Ÿ
连接两个字符串
Ÿ
替换它有两种形式,第一种形式用一个字符在调用字符串中所有出现某个字符的地方进行替换,形式如下:
String replace(char original,char replacement)
例如:String s=”Hello”.replace(’l',’w');
第二种形式是用一个字符序列替换另一个字符序列,形式如下:
String replace(CharSequence original,CharSequence replacement)
Ÿ
去掉起始和结尾的空格
Ÿ
转换为字符串
Ÿ
转换为小写
Ÿ
转换为大写
Ÿ
取得字符串的长度
例:char chars[]={’a',’b’.’c'};
String s=new String(chars);
int len=s.length();
Ÿ
截取一个字符
例:char ch;
ch=”abc”.charAt(1);
返回值为’b’
Ÿ
截取多个字符
void getChars(int sourceStart,int sourceEnd,char target[],int targetStart)
sourceStart 指定了子串开始字符的下标
sourceEnd 指定了子串结束后的下一个字符的下标。因此,子串包含从sourceStart到sourceEnd-1的字符。
target 指定接收字符的数组
targetStart target中开始复制子串的下标值
例:
String s=”this is a demo of the getChars method.”;
char buf[]=new char[20];
s.getChars(10,14,buf,0);
Ÿ
替代getChars()的一种方法是将字符存储在字节数组中,该方法即getBytes()
例:String s = “Hello!你好!”;
byte[] bytes = s.getBytes();
Ÿ
例:String s = “Hello!你好!”;
char[] ss = s.toCharArray();
Ÿ
比较两个字符串
Ÿ
用于比较一个字符串中特定区域与另一特定区域,它有一个重载的形式允许在比较中忽略大小写。
boolean regionMatches(int startIndex,String str2,int
str2StartIndex,int numChars)
boolean regionMatches(boolean ignoreCase,int startIndex,String
str2,int str2StartIndex,int numChars)
Ÿ
startsWith()方法决定是否以特定字符串开始,endWith()方法决定是否以特定字符串结束
Ÿ
equals()方法比较字符串对象中的字符,==运算符比较两个对象是否引用同一实例。
例:String s1=”Hello”;
String s2=new String(s1);
s1.eauals(s2); //true
s1==s2;//false
Ÿ
比较字符串
Ÿ
indexOf() 查找字符或者子串第一次出现的地方。
lastIndexOf() 查找字符或者子串是后一次出现的地方。
Ÿ
构造函数
StringBuffer定义了三个构造函数:
StringBuffer()
StringBuffer(int size)
StringBuffer(String str)
StringBuffer(CharSequence chars)
下面是StringBuffer相关的函数:
ü
一个StringBuffer当前长度可通过length()方法得到,而整个可分配空间通过capacity()方法得到。
ü
void ensureCapacity(int capacity)
ü
void setLength(int len)
ü
char charAt(int where)
void setCharAt(int where,char ch)
ü
void getChars(int sourceStart,int sourceEnd,char target[],int targetStart)
ü
例:int a=42;
StringBuffer sb=new StringBuffer(40);
String s=sb.append(”a=”).append(a).append(”!”).toString();
ü
StringBuffer insert(int index,String str)
StringBuffer insert(int index,char ch)
StringBuffer insert(int index,Object obj)
index指定将字符串插入到StringBuffer对象中的位置的下标。
ü
StringBuffer reverse()
ü
StringBuffer delete(int startIndex,int endIndex)
StringBuffer deleteCharAt(int loc)
ü
StringBuffer replace(int startIndex,int endIndex,String str)
ü
String substring(int startIndex)
String substring(int startIndex,int endIndex)