您好,欢迎来到尚车旅游网。
搜索
您的当前位置:首页character类和String类的各种方法

character类和String类的各种方法

来源:尚车旅游网


Character类及方法:

Character类只能用于存储和操作单一的字符数值,Character类的对象包含了单一字符数值。以下是Character类提供的构造函数:

public Character(char)

参数必须为一个char类型数据,它创建了一个Character对象,该对象包含了由参数提供的数值。一旦Character对象被创建,它包含的数值就不能改变。

下面的语句将创建一个Character对象a,该对象包含字符数据’b’:

Character a = new Character('b');

1.public int compareTo(Character)

compareTo(Character)是一个实例方法,参数必须为一个Character对象,而不能是char类型数据。该方法比较两个Character对象包含的数值,返回一个整数表明在当前对象中的数值是否大于、等于或者小于参数给定的数值。

2.public boolean equals(Object obj)

equals()是一个实例方法,用于比较两个对象。用于Character类对象时,该方法比较当前对象容纳的数值和参数对象容纳的数值。在两个对象容纳的数值相等的时候返回true,否则返回false。

3.public String toString()

所有的类从对象类继承了toString方法。toString是一个实例方法,它将对象转换为字符串。该方法用于Character类对象时,结果的字符串在长度为1,并且它包含了有这个Character对象容纳的数值。

4.public char charValue()

charValue是一个实例方法,它返回Character对象的字符。

5.public static boolean isUpperCase(char)

isUpperCase(char)是一个类方法,该方法用来判断字符参数值是否为大写。当字符参数值是大写时,返回值为true,否则返回false。

String类及方法:

在Java中,没有内置的字符串类型,字符串常量是作为String类的对象存在的。

1.创建String类对象

String类的对象表示的是字符串常量,一个字符串常量创建以后就不能够被修改了。所以在创建String类对象时,通常需要向构造函数传递参数来指定创建的字符串的内容。以下是常用的String类构造函数:

(1)public String()

该构造函数用于创建一个空的字符串常量。

(2)public String(String value)

该构造函数用于根据一个已经存在的字符串常量来创建一个新的字符串常量,该字符串的内容和已经存在的字符串常量一致。

(3)public String(char value[])

该构造函数用于根据一个已经存在的字符数组来创建一个新的字符串常量。数组将在本章后面的内容中介绍。

(4)public String(StringBuffer buffer)

该构造函数用于根据一个已经存在的StringBuffer对象来创建一个新的字符串常量。

2.String类对象的常用操作及方法

在Java中,String类包含有50多个方法来实现字符串的各种操作,以下介绍一些我们需要经常使用的方法。

(1)字符串的连接

public String concat(String str)

该方法的参数为一个String类对象,作用是将参数中的字符串str连接到原来字符串

的后面。

(2)求字符串的长度

public int length()

返回字串的长度,这里的长度指的是字符串中Unicode字符的数目。

(3)求字符串中某一位置的字符

public char charAt(int index)

该方法在一个特定的位置索引一个字符串,以得到字符串中指定位置的字符。值得注意的是,在字符串中第一个字符的索引是0,第二个字符的索引是1,依次类推,最后一个字符的索引是length()-1

(4)字符串的比较

比较字符串可以利用String类提供的下列方法:

1)public int compareTo(String anotherString)

该方法比较两个字符串,和Character类提供的compareTo方法相似,Character类提供的compareTo方法比较的是两个字符类数据,而这里比较的是字符串数据。

其比较过程实际上是两个字符串中相同位置上的字符按Unicode中排列顺序逐个比

较的结果。如果在整个比较过程中,没有发现任何不同的地方,则表明两个字符串是完全相等的,compareTo方法返回0;如果在比较过程中,发现了不同的地方,则比较过程会停下来,这时一定是两个字符串在某个位置上不相同,如果当前字符串在这个位置上的字符大于参数中的这个位置上的字符,compareTo方法返回一个大于0的整数,否则返回一个小于0的整数。

2)public boolean equals(Object anObject)

该方法比较两个字符串,和Character类提供的equals方法相似,因为它们都是重载Object类的方法。该方法比较当前字符串和参数字符串,在两个字符串相等的时候返回true,否则返回false。

3)public boolean equalsIgnoreCase(String anotherString)

该方法和equals方法相似,不同的地方在于,equalsIgnoreCase方法将忽略字母大小写的区别。

(5)从字符串中提取子串

利用String类提供的substring方法可以从一个大的字符串中提取一个子串,该方法有两种常用的形式:

1)public String substring(int beginIndex)

该方法从beginIndex位置起,从当前字符串中取出剩余的字符作为一个新的字符串返回。

2)public String substring(int beginIndex, int endIndex)

该方法从当前字符串中取出一个子串,该子串从beginIndex位置起至endIndex-1为结束。子串返的长度为endIndex-beginIndex。

通过这个程序,展示字符串求取子串的方法

public class SubStringTest

{

public static void main(String[] args)

{

String str = \"I am a programmer.\";//定义字符串

for(int i = 0; i < str.length(); i++)

{

System.out.println(\"这是第\" + i + \"个子串:\" + str.substring(i));

}

}

}

(6)判断字符串的前缀和后缀

判断字符串的前缀是否为指定的字符串利用String类提供的下列方法:

1)public boolean startsWith(String prefix)

该方法用于判断当前字符串的前缀是否和参数中指定的字符串prefix一致,如果是,返回true,否则返回false。

2)public boolean startsWith(String prefix, int toffset)

该方法用于判断当前字符串从toffset位置开始的子串的前缀是否和参数中指定的字符串prefix一致,如果是,返回true,否则返回false。

判断字符串的后缀是否为指定的字符串利用String类提供的方法:

public boolean endsWith(String suffix)

该方法用于判断当前字符串的后缀是否和参数中指定的字符串suffix一致,如果是,返回true,否则返回false。

(7)字符串中单个字符的查找

字符串中单个字符的查找可以利用String类提供的下列方法:

1)public int indexOf(int ch)

该方法用于查找当前字符串中某一个特定字符ch出现的位置。该方法从头向后查找,如果在字符串中找到字符ch,则返回字符ch在字符串中第一次出现的位置;如果在整个字符串中没有找到字符ch,则返回-1。

2)public int indexOf(int ch,int fromIndex)

该方法和第一种方法类似,不同的地方在于,该方法从fromIndex位置向后查找,返回的仍然是字符ch在字符串第一次出现的位置。

3)public int lastIndexOf(int ch)

该方法和第一种方法类似,不同的地方在于,该方法从字符串的末尾位置向前查找,返回的仍然是字符ch在字符串第一次出现的位置。

4)public int lastIndexOf(int ch,int fromIndex)

该方法和第二种方法类似,不同的地方在于,该方法从fromIndex位置向前查找,返回的仍然是字符ch在字符串第一次出现的位置。

(8)字符串中子串的查找

字符串中子串的查找与字符串中单个字符的查找十分相似,可以利用String类提供的下列方法:

1)public int indexOf(String str)

2)public int indexOf(String str,int fromIndex)

3)public int lastIndexOf(String str)

4)public int lastIndexOf(String str,int fromIndex)

查找指定的子串:

public class FindSubstring

{

public static void main(String[] args)

{

String str = \"welcome the boy.\";

System.out.println(\"Find str.indexOf(\"boy\"));//查找子串

the substring boy occurrence:\" +

System.out.println(\"Find the substring by occurrence:\" + str.indexOf(\"by\"));//查找子串

System.out.println(\"Find the char t occurrence:\" + str.indexOf('t'));//查找特定的字符

System.out.println(\"Test the string begin with wel.:\" + str.startsWith(\"wel\"));// 是否以\"wel\"开始

System.out.println(\"Test the string end with boy.:\" + str.endsWith(\"boy\"));// 是否以\"boy\"结束

}

}

(9)字符串中字符大小写的转换

字符串中字符大小写的转换,可以利用String类提供的下列方法:

1)public String toLowerCase()

该方法将字符串中所有字符转换成小写,并返回转换后的新串。

2)public String toUpperCase()

该方法将字符串中所有字符转换成大写,并返回转换后的新串。

(10)字符串中多余空格的去除

public String trim()

该方法只是去掉开头和结尾的空格,并返回得到的新字符串。值得注意的是,在原来字符串中间的空格并不去掉。

(11)字符串中字符的替换

1)public String replace(char oldChar,char newChar)

该方法用字符newChar替换当前字符串中所有的字符oldChar,并返回一个新的字符串。

2)public String replaceFirst(String regex, String replacement)

该方法用字符串replacement的内容替换当前字符串中遇到的第一个和字符串regex相一致的子串,并将产生的新字符串返回。

3)public String replaceAll(String regex, String replacement)

该方法用字符串replacement的内容替换当前字符串中遇到的所有和字符串regex相一致的子串,并将产生的新字符串返回。

StringBuffer类对象

1.创建StringBuffer类对象

StringBuffer类对象表示的是字符串变量,每一个StringBuffer类对象都是可以扩充和修改的字符串变量。以下是常用的StringBuffer类构造函数:

(1)public StringBuffer()

(2)public StringBuffer(int length)

(3)public StringBuffer(String str)

2.StringBuffer类对象的常用方法

(1)StringBuffer类对象的扩充

StringBuffer类提供两组方法用来扩充StringBuffer对象所包含的字符,分别是:

1)public StringBuffer append(Object obj)

append方法用于扩充StringBuffer对象所包含的字符,该方法将指定的参数对象转化为字符串后,将其附加在原来的StringBuffer对象之后,并返回新的StringBuffer对象。附加的的参数对象可以是各种数据类型的,如int、char、String、double等。

2)public StringBuffer insert(int 插入位置,参数对象类型,参数对象名)

该方法将指定的参数对象转化为字符串后,将其插入在原来的StringBuffer对象中指定的位置,并返回新的StringBuffer对象。

(2)StringBuffer类对象的长度与容量

一个StringBuffer类对象的长度指的是它包含的字符个数;容量指的是被分配的字符空间的数量。

1)public int length()

该方法返回当前StringBuffer类对象包含的字符个数。

2)public int capacity()

该方法返回当前StringBuffer类对象分配的字符空间的数量。

(3)StringBuffer类对象的修改

public void setCharAt(int index,char ch)

该方法将当前StringBuffer对象中的index位置的字符替换为指定的字符ch。

(4)字符串的赋值和加法

字符串是在程序中要经常使用的数据类型,在Java编译系统中引入了字符串的赋值和加法操作。

(5)其他

CharAt返回字符串中的单个字符。

GetChars返回字符串的一个子字符串。

Insert在字符串指定位置插入值。它有多个重载版本以容纳各种数据类型。

Substring返回字符串的一个子集。

Reverse倒置StringBuffer的内容。

public class StringBufferTest

{

public static void main(String[] args)

{

StringBuffer sb = new StringBuffer(10);

sb.append(\"this is an example\");

System.out.println(sb.capacity());

System.out.println(sb.length());

System.out.println(sb.toString());

sb.reverse();

System.out.println(sb.toString());

sb.ensureCapacity(40);

Systrm.out.println(sb.toString());

sb.setLength(11);

Systrm.out.println(sb.toString());

}

}

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- sceh.cn 版权所有 湘ICP备2023017654号-4

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务