一.字符串的声明:
声明字符串必须经过初始化才能使用,否则编译器会报“变量未被初始化错误”
语法:String str
1.String(char a[ ])
char[]a={'H','E','L','L','O'};
String str=new String(a);
//等价于
String str=new String("HELLO");
二.获取字符串信息
1.获取字符串长度
str.length(); str为字符串对象
String str="hello";
int s=str.length();
2.字符串查找
str.indexOf(substr) str:任意字符串对象 substr:要搜索的字符串
注意:会从开始位置进形搜索,直到找到字符串,若没有找到则返回-1,若找到则返回需要搜索字符串的下标
String str="hello";
int size=indexOf(a);
//会从开始位置进形搜索,直到找到字符串,若没有找到则返回-1,若找到则返回需要搜索字符串的下标
str.lastIndexOf(substr) str:任意字符串对象 substr:要搜索的字符串
注意:会检索出最后一次出现要搜索字符串的下标
3.获取指定索引位置的字符
str.charAt(int index) str:任意字符串 index:指定要返回字符的下标
String str="hello";
str.charAt(3);
三.字符串操作
1.获取子字符串
str.substring(int beginIndex) beginIndex:指定从某一处索引开始截取字符串
String str="hello";
String substr=str.substring(3);
str.substring(int beginIndex,int endIndex);
beginIndex:指定从某一处索引开始截取字符串,endIndex:结束截取的某一索引处
String str="hello";
String substr=str.substring(3,7);
2.去除空格
str.trim() str:任意的字符串对象
注意:trim()方法返回字符串的副本,忽略前导空格和尾部空格
String str=" java class ";
String substr=str.trim();
3.字符串替换
str.replace(char oldChar,char newChar)
注意:replace()方法返回的是一个新的字符串,如果字符串oldChar没有出现在该对象中的字符串序列中,则返回原字符串
String str="Hello Java";
String substr=str.replace("H","h");
4.判断字符串的开始与结尾
str.startsWith(String prefix) prefix:指作为前缀的字符
str.endWih(String prefix)
注意:返回的是Boolean类型
String num="2345675";
String num1="2456453";
boolean b=num.startsWith("23");//true
boolean b1=num1.endWith("45");//false
5.判断字符串是否相等(“==”比较两个字符串的地址是否相同)
str.equals(String otherstr)
str.equalsIgnoreCase(String otherstr)
String str="Hello java";
String otherstr="Hello java";
String other="hello java";
boolean b=str.equals(otherstr);//true
boolean b1=str.equalsIgnoreCase(other);//true
6.按字典顺序比较两个字符串
str.compareTo(String otherstr)
注意:compareTo()方法只有在equals(Object)方法返回true时才会返回0
String str=new String("b");
String str1=new String("a");
String str2=new String("c");
str.compareTo(str1)//1
str.compareTo(str2)//-1
7.字母大小写转换
str.toUpperCase(); str是需要转换的字符串
str.toLowerCase();
8.字符串分割
str.split(String sign); sign为分割字符串的分隔符
注意:若想使用定义多个分隔符,可使用符号“|”,例如,“,|=”表示分隔符分别是“,”和“=”
str.split(String sign,int limit) 限定拆分的次数limit
String str="192.169.0.1";
String[]firstArray=str.split("\\.");//使用转义字符"\\."表示按"."分割
String[]secondArray[]=str.split("\\.",2);
//使用转义字符"\\."表示按"."分割两次