字符串是JAVA中经常处理的对象,如果字符串应用得不好,将影响到程序运行的效率。在JAVA中字符串作为String类的实例来处理,以对象的方式来处理字符串,将使字符串更加的灵活方便。那么,下面我们就来具体了解下字符串到底应该怎么用?
前期准备工作(包括相关工具或所使用的原料等)JAVAEclipse 一、String 类
1、声明字符串
在JAVA语言中,字符串必须包含在一个双引号之内“”。
可以通过下列语法格式来声明字符串变量:
String str=[null]
String:指定该变量为字符串类型;
str:任意有效的标识符,表示字符串变量的名称;
如果省略null,表示该字符串为未初始化状态,否则表示声明的字符串值为null.
声明字符串变量必须经过初始化才能使用。
2、创建字符串
几种常用的构造方法如下:
1、String(char a[])方法
2、Sting(char a[],int offset ,int length)
3、String(char [] value)
二、连接字符串
1、连接多个字符串
使用“+”运算符可完成对多个字符串连接的功能。“+”运算符可以连接多个运算符并产生一个String对象。
举例如下:

2、连接其他数据类型
字符串也可以同其他数据类型连接,这样会把这些数据直接转换成字符串。
举例如下:

三、获取字符串信息
1、获取字符串长度
使用String类的length()方法可获取声明的字符串对象的长度。
语法如下:
str.length();
其中,str为字符串对象,可以替换为其他字段名
举例如下:
length()返回字符串的长度是包含空格的。

2、字符串查找
String类提供了两种查找字符串的方法,即indexOf()与lastIndexOf()方法。这两种方法都允许在字符串中搜索指定条件的字符或字符串。indexOf()方法返回的是搜索的字符或字符串首次出现的位置,lastIndexOf()方法返回的是搜索的字符或字符串最后一次出现的位置。
(1)indexOf(String s)
举例如下:
字符串的下标是从0开始的,也就是0~length()~n,所以下面的例子返回值为3,而不是4,就是这个原因

(2)lastIndexOf(String str)
举例如下:

3、获取指定索引位置的字符
使用charAt()方法可将指定索引处的字符返回。
语法如下:
str.charAt(int index)
str:任意字符串。
index:整型值,用于指定要返回字符的下标。
举例如下:

四、字符串操作
1、获取子字符串
通过String类的substring()方法可对字符串进行截取。这些方法的共同点就是都利用字符串的下标进行截取,并应明确字符串下标是从0开始的。
substring()方法被两种不同的方法重载,来满足不同的需要。
(1)substring(int beginIndex)
语法如下:
str.substring(int beginIndex)

(2)substring(int beginIndex, int endIndex)
语法如下:substring(int beginIndex, int endIndex)
意思是从哪个字符开始,截取到哪个字符结束。

2、去除空格
trim()方法返回字符串的副本,忽略前导空格和尾部空格。
语法如下:
str.trim()
其中,str为任意的字符串对象。
举例如下:

3、字符串的替换
replace()方法可实现将指定的字符或字符串替换成新的字符或字符串。
语法如下:
str.replace(char oldChar,char newChar)
oldChar:要替换的字符或字符串。
newChar:用于替换原来字符串的内容。
replace()方法返回的结果是一个新的字符串。如果字符串oldChar没有出现在该对象表达式中的字符串序列中,则将原字符串返回。

4、判断字符串的开始与结尾
startsWith()方法与endsWith()方法分别用于判断字符串是否以指定的内容开始或结束。这两个方法的返回值都为boolean类型。
startsWith()方法
该方法用于判断当前字符串对象的前缀是否是参数指定的字符串。
语法如下:str.startsWith(String prefix)
其中,prefix是指作为前缀的字符。
endsWith()方法
该方法用于判断当前字符串是否是以给定的子字符串结束。
语法如下:str.endsWith(String suffix)
其中,suffix是指作为后缀的字符串。
举例如下:

5、判断字符串是否相等
判断字符串是否相等有equals()、equalsIgnoreCase()两种方法,而又有各自的规则,使用不好就会出错,所以一定要区分好什么时候用哪种方法。
(1)equals()方法
语法如下:str.equals(String otherstr)
(2)equalsIgnoreCase()方法
语法如下:str.equalsIgnoreCase(String otherstr)
这两者的区别是equals()方法没有忽略大小写,equalsIgnoreCase()方法忽略大小写;

6、按字典顺序比较两个字符串
compareTo()方法为按字典顺序比较两个字符串,该比较基于字符串中各个字符的Unicode值,按字典顺序将此String对象表示的字符序列与参数字符串所表示的字符序列进行比较。如果按字典顺序此String对象位于参数字符串之前,则比较结果为一个负整数;如果按字典顺序此String对象位于参数字符串之后,则比较结果为一个正整数;如果这两个字符串相等,则结果为0。
语法如下:
str.compareTo(String otherstr)
其中,str、otherstr是参加比较的两个字符串对象。
7、字母大小写转换
字符串的toLowerCase()方法可将字符串中的所有字符从大写字母改写为小写字母,而toUpperCase()方法可将字符串中的小写字母改写为大写字母。

五、正则表达式
为了检查输入的数据是否满足某种格式,从JDK1.4开始可以使用String类的matches()方法进行判断。语法如下所示:
boolean matches(String regex)
t regex:指定的正则表达式
t 返回值:返回boolean类型
该方法用于告知当前字符串是否匹配参数regex指定的正则表达式。返回值是boolean类型,如果当前字符串与正则表达式匹配,则该方法返回true,否则返回false。
正则表达式是由一些含有特殊意义的字符组成的字符串,这些含有特殊意义的字符称为元字符,下表列出了正则表达式的部分元字符。


在使用正则表达式时,如果需要某一类型的元字符多次输出,逐个输入就相当麻烦,这时可以使用正则表达式的限定元字符来重复次数。下表列出了常用限定符及其含义。

在正则表达式中还可以用方括号把多个字符括起来,方括号中各种正则表达式代表不同的含义。下表列出了方括号中元字符及其含义。

六、字符串生成器
StringBuilder类,即字符串生成器,新创建的StringBuilder对象初始容量是16个字符,可以自行指定初始长度,也可以动态地执行添加、删除和插入等字符串的编辑操作,大大提高了频繁增加字符串的效率。如果附加的字符超过可容纳的长度,则StringBuilder对象将自动增加长度以容纳被附加的字符。
StringBuilder类的构造方法有很多,主要是参数上的区别,这里我们主要介绍几种在编程中经常会用到的方法。
StringBuilder append(String str)方法
StringBuilder append(StringBuffer sb)方法
StringBuilder insert(int offset, String str) 方法
StringBuilder delete(int start, String end)方法
String toString() 方法
经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。作者声明:本教程系本人依照真实经历原创,未经许可,谢绝转载。- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
