声明字符串
在Java语言中字符串必须包含在一对双引号(" ")之内。如 :"你好", "123"
声明字符串:String str;
创建字符串
1)String(char a[])
用一个字符数组a创建String对象 ,实例代码如下:
char a[] ={'h','e','l','l','o'}; String s = new String(a); 等价于 String s = new String("hello");
2)String(char a[],int offset,int length)
提取字符数组a中的一部分创建一个字符串对象。参数offset表示开始截取字符串的位置,length表示截取字符串的长度。实例代码如下:
char a[]={'h','e','l','l','o'}; String s= new String(a,2,3); 等价于 String s = new String("llo");
3)String (char[] value)
该构造方法可分配一个新的String对象,使其表示字符数组参数中所有元素连接的结果。实例代码如下:
char a[] ={'h','e','l','l','o'}; String s = new String(a); 等价于 String s = new String ("hello");
连接字符串
使用 "+" 运算符可实现连接多个字符串的功能。"+" 运算符可以连接多个运算符并产生一个String对象
1 public class Join{//创建类
2 public static void main(String args[]){//主方法
3 String s1 = new String("hello");//声明String对象s1
4 String s2 = new String("word");//声明String对象s2
5 String s = s1+" "+s2;//将对象s1, s2连接后的结果赋值给s
6 System.out.println(s);//将s输出
7
8
9 }
10
11
12 }
获取字符串长度
使用String类的length()方法可以获取声明的字符串对象的长度。
str.length(); 其中str为字符串对象
字符串查找
String类提供了两种查找字符串的方法,即indexOf() 于lastIndexOf() 方法。这两种方法都允许在字符串中搜索指定条件的字符或者字符串。indexOf()方法返回的是搜索的字符或字符串首次出现的位置。lastIndexOf()方法返回的是搜索的字符或者字符串最后一次出现的位置。
1)indexOf(String s)
该方法用于返回参数字符串s在指定字符串中首次出现的索引位置。当调用字符串的indexOf()方法时,会从当前字符串的开始位置搜索s的位置,如果没有检索到字符串s,该方法的返回值是-1。例:
查找字符a在字符串str中的索引位置
String str ="We are Students";
int size = str.indexOf("a");//变量size的值是3
2)lastIndexOf(String str)
该方法用于返回指定字符串最后一次出现的索引位置。当调用字符串的lastIndexOf()方法时,会从当前字符串的开始位置检索参数字符串str,并将最后一次出现str的索引位置返回,如果没有检索到字符串,该方法返回-1
public class text{
public static void main(String args[]){
String str = "we are students";//定义字符串str
//将空字符串在str中的索引位置赋值给变量size
int size = str.lastIndexOf("");
//将变量size输出
System.out.println("空字符在字符串str中的索引位置是"+size);//size为15
//将字符串str的长度输出
System.out.println("字符串str的长度是"+str.length);//输出长度为15
}
}
说明:
如果lastIndexOf()方法中的参数是空字符串 "" (注意没有空格),则返回的结果与调用该字符串length()方法的返回结果相同
获取指定索引位置的字符
str.charAt(int index) 使用charAt()方法可将指定索引处的字符返回
获取子字符串
通过String类的substring()方法可对字符串截取。这些方法的共同特点就是都利用字符串的下标进行截取,且明确字符串下标是从0开始的
substring()方法被两种不同的方法重载
1)substring(int beginIndex) beginIndex指定从某一索引处开始截取字符串(包含开始)
2)substring(int beginIndex,int endIndex) endIndex 结束为止(不包含结束)
去除空格
trim()方法返回字符串的副本,忽略前导空格和尾部空格
字符串替换
replace()方法可实现将指定的字符或字符串替换成新的字符或字符串
语法:str.replace(char oldChar,char newChar)
判断字符串的开始和结尾
startsWith()方法与endsWith()方法分别用于判断字符串是否以指定的内容开始或结束,这两个方法的返回值都为Boolean类型
语法:
str.startsWith(String prefix) 该方法用于判断当前字符串对象的前缀是否为参数指定的字符串 prefix是指作为前缀的字符
str.endsWith(String suffix) suffix是指作为后缀的字符串
判断字符串是否相等
对字符串对象进行比较不能简单地使用比较运算符"=="因为比较运算符比较的是两个字符串的地址是否相同。即使两个字符串的内容相同,两个对象的内存地址也是不同的,使用比较运算符仍然会返回false因此,比较两个字符串内容是否相等,应使用equals()方法和equalsIgnoreCase()方法
str.equals(String otherstr) 比较两个字符串对象 区分大小写
str.equalsIgnoreCase(String otherstr) 不区分大小写
按字典顺序比较两个字符串
compareTo()方法为按字典顺序比较两个字符串,该比较基于字符串中各个字符的值,按字典顺序将此string对象表示的字符数列与参数字符串所表示的字符序列进行比较。如果按字典顺序此string对象位于参数字符串之前,则比较结果为一个负整数;如果按字典顺序此string对象位于参数字符串之后,则比较结果为一个正整数;如果这两个字符串相等,则结果为0
语法:
str.compareTo(String otherstr)
字母大小写转换
1)toLowerCase()将string转换为小写
2) toUpperCase()将string转换为大写
说明:使用toLowerCase()方法和toUpperCase()方法进行大小写转换时,数字或非字符不受影响
字符串分割
1)split(String sign) 根据给定的分割符对字符串进行拆分 sign为分割字符串的分隔符,也可以使用正则表达式
2)split(String sign,int limit) 根据给定的分割符对字符串进行拆分,并限定拆分的次数
格式化字符串
String类的静态format()方法用于创建格式化的字符串,format()方法有两种重载形式
1)format(String format ,Object...args) 使用指定的格式字符串和参数返回一个格式化字符串,格式化后的新字符串使用本地默认的语言环境
2)format(Local l,String format,Object..args)
format:格式字符串
args:格式字符串中由格式说明符引用的参数。如果还有格式说明符以外的参数,则忽略这些额外的参数。此参数的数目是可变的,可以为0
l:格式化过程中要使用的语言环境。如果l为null,则不进行本地化