《Java中所有有关String的函数》由会员分享,可在线阅读,更多相关《Java中所有有关String的函数(27页珍藏版)》请在金锄头文库上搜索。
1、1.String类 在Java中,没有内置的字符串类型,字符串常量 是作为String类的对象存在的。 注意: Java中的字符串和C语言中的字符串的区别 Java的字符串是一个对象,不可分割。 C语言中是一个字符数组1 String类1创建String类对象String类的对象表示的是字符串常量, 一个字符串常量创建以后就不能够被修改了 。所以在创建String类对象时,通常需要向 构造函数传递参数来指定创建的字符串的内 容。以下是常用的String类构造函数:(1)public String();该构造函数用于创建一个空的字符串常 量。 String str = new String();
2、 String str = “”; (2)public String(String value) 该构造函数用于根据一个已经存在的 字符串常量来创建一个新的字符串常量,该 字符串的内容和已经存在的字符串常量一致 。 例如:String str = new String(“abc”); String str = “abc”;3.2 字符串常量与String类(3)public String(char value)该构造函数用于根据一个已经存在的字符数组来创建 一个新的字符串常量。数组将在本章后面的内容中介绍。 (4)public String(StringBuffer buffer)该构造函数用
3、于根据一个已经存在的StringBuffer对 象来创建一个新的字符串常量。String类2String类对象的常用操作及方法在Java中,String类包含有50多个方法 来实现字符串的各种操作,以下介绍一些我 们需要经常使用的方法。(1)字符串的连接public String concat(String str) 该方法的参数为一个String类对象,作 用是将参数中的字符串str连接到原来字符串 的后面String类(2)求字符串的长度public int length()返回字串的长度,这里的长度指的是 字符串中Unicode字符的数目。 (3)求字符串中某一位置的字符public c
4、har charAt(int index)该方法在一个特定的位置索引一个字 符串,以得到字符串中指定位置的字符。值 得注意的是,在字符串中第一个字符的索引 是0,第二个字符的索引是1,依次类推,最 后一个字符的索引是length()1。 3.2 字符串常量与String类(4)字符串的比较比较字符串可以利用String类提供的下列方法:1)public int compareTo(String anotherString)该方法比较两个字符串,过程实际上是两个字 符串中相同位置上的字符按Unicode中排列顺序逐 个比较的结果。如果在整个比较过程中,没有发现任何不同的地 方,则表明两个字符串是
5、完全相等的,compareTo 方法返回0;如果在比较过程中,发现了不同的地方,则比较 过程会停下来,这时一定是两个字符串在某个位置 上不相同, 3.2 字符串常量与String类如果当前字符串在这个位置上的字符大于参 数中的这个位置上的字符,compareTo方法 返回一个大于0的整数,否则返回一个小于0 的整数2)public boolean equals(Object anObject)该方法比较两个字符串,该方法比较当前字符 串和参数字符串,在两个字符串相等的时候返回 true,否则返回false。3)public boolean equalsIgnoreCase( String an
6、otherString)该方法和equals方法相似,不同的地方在于 ,equalsIgnoreCase方法将忽略字母大小写的区别 。3.2 字符串常量与String类(5)从字符串中提取子串利用String类提供的substring方法可以从一个大的字符 串中提取一个子串,该方法有两种常用的形式:1)public String substring(int beginIndex)该方法从beginIndex位置起,从当前字符串中取出剩余 的字符作为一个新的字符串返回。2)public String substring(int beginIndex, int endIndex)该方法从当前字符串
7、中取出一个子串,该子串从 beginIndex位置起至endIndex-1为结束。子串返的长度为endIndex-beginIndex。 3.2 字符串常量与String类(6)判断字符串的前缀和后缀判断字符串的前缀是否为指定的字符串利用String类提 供的下列方法:1)public boolean startsWith(String prefix)该方法用于判断当前字符串的前缀是否和参数中指定 的字符串prefix一致,如果是,返回true,否则返回false。2)public boolean startsWith(String prefix, int toffset)该方法用于判断当前字
8、符串从toffset位置开始的子串的 前缀是否和参数中指定的字符串prefix一致,如果是,返回 true,否则返回false。3.2 字符串常量与String类判断字符串的后缀是否为指定的字符串利用String类提供的 方法:public boolean endsWith(String suffix)该方法用于判断当前字符串的后缀是否和参数中指定的 字符串suffix一致,如果是,返回true,否则返回false。(7)字符串中单个字符的查找字符串中单个字符的查找可以利用String类提供的下 列方法:1)public int indexOf(int ch)该方法用于查找当前字符串中某一个特
9、定字符ch出现的 位置。该方法从头向后查找,如果在字符串中找到字符ch, 则返回字符ch在字符串中第一次出现的位置;如果在整个字 符串中没有找到字符ch,则返回-1。3.2 字符串常量与String类2)public int indexOf(int ch,int fromIndex)该方法和第一种方法类似,不同的地方在于,该方法 从fromIndex位置向后查找,返回的仍然是字符ch在字符串 第一次出现的位置。 3)public int lastIndexOf(int ch)该方法和第一种方法类似,不同的地方在于,该方法 从字符串的末尾位置向前查找,返回的仍然是字符ch在字符 串第一次出现的位
10、置。4)public int lastIndexOf(int ch,int fromIndex)该方法和第二种方法类似,不同的地方在于,该方法 从fromIndex位置向前查找,返回的仍然是字符ch在字符串 第一次出现的位置。3.2 字符串常量与String类(8)字符串中子串的查找字符串中子串的查找与字符串中单个字符的查找十分 相似,可以利用String类提供的下列方法:1)public int indexOf(String str)2)public int indexOf(String str,int fromIndex)3)public int lastIndexOf(String st
11、r)4)public int lastIndexOf(String str,int fromIndex) 3.2 字符串常量与String类(9)字符串中字符大小写的转换字符串中字符大小写的转换,可以利用String类提供的 下列方法:1)public String toLowerCase()该方法将字符串中所有字符转换成小写,并返回转换 后的新串。2)public String toUpperCase()该方法将字符串中所有字符转换成大写,并返回转换后 的新串。 (10)字符串中多余空格的去除public String trim()该方法只是去掉开头和结尾的空格,并返回得到的新 字符串。值得
12、注意的是,在原来字符串中间的空格并不去掉 。3.2 字符串常量与String类(11)字符串中字符的替换1)public String replace(char oldChar,char newChar)该方法用字符newChar替换当前字符串中所有的字符 oldChar,并返回一个新的字符串。2)public String replaceFirst(String regex, String replacement)该方法用字符串replacement的内容替换当前字符串中 遇到的第一个和字符串regex相一致的子串,并将产生的新 字符串返回。 3)public String replaceA
13、ll(String regex, String replacement)该方法用字符串replacement的内容替换当前字符串中 遇到的所有和字符串regex相一致的子串,并将产生的新字 符串返回。 3.2 字符串常量与String类(12)其它数据类型转换为字符串Static String valueOf(boolean b) Static String valueOf(char c) Static String valueOf(char data) Static String valueOf(char data, int offset, int count) Static String
14、valueOf(double d) Static String valueOf(float f) Static String valueOf(int i) Static String valueOf(long l) Static String valueOf(Object obj) 【例3.4】 String类方法的应用示例程序3.3 字符串变量与StringBuffer类1创建StringBuffer类对象StringBuffer类对象表示的是字符串变量,每一个 StringBuffer类对象都是可以扩充和修改的字符串变量。以 下是常用的StringBuffer类构造函数:(1)public
15、 StringBuffer()创建一个新的空的StringBuffer类的对象,其容量初 值设置成16个字符 (2)public StringBuffer(int length)创建一个新的空的StringBuffer类的对象,其容量初 值设置成length个字符 (3)public StringBuffer(String str) 创建一个新的StringBuffer类的对象,其内容为str的内容,容 量设置成str长度再加16个字符 3.3 字符串变量与StringBuffer类2StringBuffer类对象的常用方法(1)StringBuffer类对象的扩充StringBuffer类提
16、供两组方法用来扩充StringBuffer对 象所包含的字符,分别是:1)public StringBuffer append(Object obj)append方法用于扩充StringBuffer对象所包含的字符, 该方法将指定的参数对象转化为字符串后,将其附加在原来 的StringBuffer对象之后,并返回新的StringBuffer对象。附 加的的参数对象可以是各种数据类型的,如int、char、 String、double等。 3.3 字符串变量与StringBuffer类2)public StringBuffer insert(int 插入位置offset,参数对对象类类型,参数对对 象名)该方法将指定的参数对象转化为字符串后,将其插入在 原来的StringBuffer对象中指定的位置,并返回新的 StringBuffer对象。(2)StringBuffer类对象的长度与容量一个StringBuffer类对象的长度指的是它包含的字符个 数;容量指的是被分配的字符空间的数量。1