黑马程序员——字符串

------- <a href="http://www.itheima.com" target="blank">android培训</a>、<a href="http://www.itheima.com" target="blank">java培训</a>、期待与您交流! ----------

字符串

Java 将字符串作为对象来处理。

String 位于java.lang包中。

字符串一旦被初始化,就不能再改变。

 

String str;声明

 

创建

String str="abc";引用字符串常量

String(char[] ar)

String(char[] ar value)

String(char[] ar,int offset,int length)

字符串连接

只要“+”运算符的一个操作数是字符串,编译器就会把另一个操作数也转换成字符串。

 

String方法:

1--有关获取

int length()   返回长度

int indexOf(String s)   返回索引 (找不到返回-1)

int lastIndexOf(String s)  返回索引 (找不到返回-1,s为""时,返回length)

char charAt(int index)   返回字符

2--有关判断

String replace(char oldChar,char newChar)   替换字符并返回新字符串  (找不到oldChar,返回原字符串)

boolean startsWith(String s)  判断是否以s开头

boolean endsWith(String s)判断是否以s结尾

boolean equals(String s)判断两串是否相等
boolean equalsIgnoreCase(String s)忽略大小写判断是否相等
boolean regionMatches(boolean ignoreCase,offset,otherString,offset,length)(boolean ignoreCase 去掉后考虑大小写) 

3--有关转换

构造函数String(char[] ar)

String(char[] ar,int offset,int count)

String(byte[] ar,int offset,int length)

静态方法copyValueOf(...)    (参数与上面的构造函数一样)


静态方法valueOf(...) (参数有 intlongfloatdoubleboolean charchar[]char[],offset,countobject)


字符串变字符数组 toCharArray()

字符串变字节数组 getBytes()

4--有关改造字符串并返回新串

String trim()  去空格

String substring(int beginindex)    返回子串

String substring(int beginindex,int endindex)  返回子串

String replace(char a,char b)

String replace(String a,String b)     b把a换掉找不到a就返回原串

String toUpperCase()  返回大写化后的新字符串

String toLowerCase()  返回小写化后的新字符串

String [] split(String sign)  按sign分割成字符串数组并返回该数组(sign 匹配正则表达式)

String [] split(String sign,int limit)  limit是分割后的段数(sign 匹配正则表达式)

5--比较方法

int compareTo(String s)按Unicode码顺序比较将字符串大小,结果是this的码值减去s的码值。

 

字符串生成器

 StringBuffer 字符可变序列,不同于String通过new新对象对字符串进行改变的操作方式,StringBuffer只对自身进行增加、删除、修改等操作。因此在进行这些操作时StringBuffer比String高效。

增加

append(...) 多种重载

insert(...) 多种重载

删除

delete(int start,int end)

deleteCharAt(int index)

修改

setCharAt(int index)

获取

void getChars(int srcBegin,int srcEnd,char[] dst,int dstBegin)

StringBuffer是多线程安全的,但会增加检查的工作。

JDK1.5后增加了为单线程增加了StringBuilder,它不是线程安全的,但更加快速。

建议用StringBuilder,需要时加安全锁。


 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章