String类中方法可以划分为:
获取方法:
int length(); 获取字符串的长度
char charAt(int index) 根据给定的角标获取字符串中对应角标下的字符
int indexOf(int ch)根据给定的字符获取字符在字符串第一次出现角标
int indexOf(String str)根据给定的字符串获取子字符串在字符串对象中第一次出现的角标
int indexOf(int ch,int fromindex)根据给定的字符,从指定的角标开始获取字符在字符串中第一次出现的角标
int indexOf(String str,int index)
int lastIndexOf(String str) 根据给定的字符串获取子字符串在字符串对象中最后一次出现的角标
int lastIndexOf(int ch,int index)根据给定的字符,从指定的角标开始获取字符在字符串中最后一次出现的角标
判断方法:
boolean endsWith(String str)判断字符串对象是否以给定的字符串作为结尾
boolean startsWith(String str)判断字符串对象是否以给定的字符串作为开头
boolean equals(Object obj) 判断字符串对象是否和给定的字符串相同(以存储内容)
判断时区分大小写字母
booolean equalsIgnoreCase(Stringstr)判断字符串对象是否和给定的字符串相同
判断是不区分大小写字母
boolean isEmpty() 判断字符串对象是否为空。(空表示空字符串)
可以使用length()==0代替 或equals(“”)
boolean contains(String str)判断字符串对象中是否包含指定的字符或子字符串
截取方法:
String substring(int index) 从指定的角标开始,截取字符串对象中的子字符串(截取到末尾)
String substring(int startIndex,int endIndex) 截取字符串对象中的子字符串,从指定的开始角标到指定的结束角标(包头不包尾)
切割方法:
String[] split(String str) 根据给定的分隔符[字符串参数]把字符串对象进行分隔,分隔为多个字符串
转换方法:
String toUpperCase() 把字符串转为大写
String toLowerCase() 把字符串转为小写
把基本类型数据转为字符串(静态方法)
String valueOf(基本类型数据[不包含byte]) (也可以是Object类型数据)
把字符串对象转为字节数组:
byte[] getBytes()
把字符串对象转为字符数组:
char[] toCharArray()
把字节数组转为字符串:
new String(byte[]) //使用构造方法转换
把字符数组转为字符串:
new String(char[])//使用构造方法转换
String.valueOf(char[]) //使用静态方法valueOf
其它方法:
String trim() 去除字符串对象两边的空格 例:” N BA ” trim()后:”N BA”
String replace(char oldChar,char newChar) 指定字符串对象中的字符,使用一个新的字符替换
String concat(String str) 把给定的字符串拼接到字符串对象的后面
int compareTo(String str)拿字符串对象和给定的字符串进行比较
public void StringAPI() {
String s1 = "basic,back,bad,bag";
System.out.println(s1.length());
s1.charAt(2);
s1.indexOf("ba");
s1.indexOf('a');
s1.lastIndexOf('b'); // lastIndexOf(ch, value.length - 1);
int index = s1.lastIndexOf("ba", s1.length() - 1);
//String ---> char []
char []out = s1.toCharArray();
for (char c : out) {
System.out.print(c);
}
System.out.println();
//char [] ---->String
String s2 = String.valueOf(out);
String s3 = new String(out);
//String ---> byte[]
byte []b = s1.getBytes();
for (byte c : b) {
char s = (char)c;
System.out.print(s);
}
System.out.println();
//byte [] --->String
String s4 = new String(b);
System.out.println(s4);
}