String
String的构造方法
一般有三种(1)String();
(2)String(String value); //用字符串来构造
(3)String(char[] value); //用字符数组来定义
String的常用方法
(1)length(); //返回字符串的长度
(2)char charAt(int index); //返回字符串中index位置上的字符
(3)getChars(int srcBegin, int srcEnd, char dst[], int dstBegin);
//从目标若干字符中取字符串放入dst[]数组中,从srcBegin位置开始到srcEnd-1位置结束,dstBegin为提取的字符放在dst[]中的起始位置。
例如:
String s="01234567";
char[] dst=new char[3];
s.getChars(1,4,dst,0); //数组dst内容为{‘1’,‘2’,‘3’}
(4)equals(String str) //判断两个字符串内容是否相同,区分大小写
equalsIgnoreCase(String str) //不区分大小写,判断两个字符串内容是否相同
(5)int compareTo(String str); //按字典次序比较两个字符串的大小,如果源字符串较小,返回值<0;两个字符串相等,返回0;如果源字符串叫大,返回>0;
(6)indexOf() 和lastIndexOf() //在字符串中检索特定字符或子字符串。
(7)concat(String str) //把字符串str附加在当前字符串的末尾。
(8)substring() //返回字符串的一个子字符串
(9)replaceAll(String str1, String str2) //把所有str1替换为str2
replaceFirst(String str1, String str2) //替换第一个str1为str2
(10)trim(); //把字符串首尾的空格删除
(11)String valueOf() //把基本类型转换为String类型
(12)toUpperCase() 和 toLowerCase() //转换大小写
StringBuffer
StringBuffer的构造方法
(1) StringBuffer() //建立一个空的缓冲区,默认长度为16
(2) StringBuffer(int length) //建立一个长度为length的空缓冲区
(3) StringBuffer(String str) //缓冲区的初始内容为字符串str,后面还有16个空的缓冲区供再次分配
StringBuffer的常用方法
(1)length() //返回StringBuffer的长度
(2)append() //想StringBuffer中添加新的字符串。
(3)toString() //返回缓冲区内的字符串
(4)charAt(int index) //取某一位的字符
setCharAt(int index, char ch) //将index位置上的字符换为ch
(5)subString() //与String中的subString用法相同
(6)getChars(int srcBegin, int srcEnd , char[] dst, int dstBegin) //提取字符串放入dst字符数组中
(7)insert(int offset, String str) //在offset位置插入字符串str
StringBuffer和String的区别
(1)String是不可变类,String对象创建后,其内容无法改变,一些看起来能够改变字符串的方法,实际上是创建了一个新的字符串并返回。
StringBuffer则可以直接改变缓冲区里的字符串内容。
(2)String 类覆盖了equals() 方法,而StringBuffer 类没有覆盖equals() 方法。
(3)两个类都覆盖了toString()方法,但实现方法不一样。
String类的toString() 方法返回当前String实例的本身的引用。
StringBuffer 的toString() 方法返回一个以当前StringBuffer的缓冲区中所有字符串为内容的心的String对象的引用。
(4)String类可以用“+”进行连接,而StringBuffer不可以。
当然前面说过,String类是一个不可以改变的类,那么每一次“+”,都会重新新建一个String对象,如果“+”的次数很多,可以变为StringBuffer后再进行append操作,这样可以节约更多的空间。