目录
二,获取指定位置上的某个字符(char charAt(int index))
方法1:String.indexOf(String str)
方法2:String.indexOf(String str ,int from index)
方法4:String.indexOf(int ch,int fromIndex)
replace(String old,String new)
九String的减法运算compareTo(String str)
一,获取字符串长度(int length())
String str="123345";
System.out.println(str.length());
长度为8。
二,获取指定位置上的某个字符(char charAt(int index))
String value="abcdeafg";
char a=value.charAt(3);//获取下标为3位置上的元素
System.out.println(a);
结果为d。
三,字符串的下标获取String.indexOf()
这个方法主要用于字符串中子字符串或字符的获取,并返回其下标,如果不存在,则返回-1。
需要注意的是它返回值是子字符串第一次出现的位置下标。
方法1:String.indexOf(String str)
str即要获取的子字符串,存在返回其下标,不存在则返回-1。
示例;
String value="12334";
System.out.println(value.indexOf("23"));
结果如图:
方法2:String.indexOf(String str ,int from index)
这个方法的区别是规定了开始搜索的位置,int from index即从该下标位置开始搜索
示例:
String value="12334";
System.out.println(value.indexOf("23",2));
结果如图:
如图,虽然value中有"23",但起始搜索位置是从下标2开始,所以搜索范围中并没有"23",返回值为-1。
方法3:String.indexOf(int ch)
与String.indexOf(String str)不同的是获取的是字符而非字符串,用法相同。
String value="abcdefg";
System.out.println(value.indexOf('a'));
结果如图:
方法4:String.indexOf(int ch,int fromIndex)
同理,指定了搜索起始下标位置,范围内存在返回字符所在位置的下标,不存在返回-1。
String value="abcdeafg";
System.out.println(value.indexOf('a',3));
结果如图:
四,字符串的截取
String str="12345";
String s1=str.substring(3);//从指定下标位置3开始截取至结尾
String s2=str.substring(2,4);//从指定下标位置开始截取至下标4,但不包含4
五,字符串的判断
以下返回值皆为boolean值
boolean contains(str);//判断是否包含字符串str
boolean isEmpty();//判断字符串是否为空,注意:” ” 空格也是char,并不为空
boolean startWith(str);//判断是否以指定字符串开头
boolean endWith(str);//判断是否以指定字符串结尾
boolean equals(str);//判断字符串的内容是否相同,注意:String类重写了Object类中的equals方法
五,字符串的转化功能
byte[] s1=str.getBytes();
char[] toCharArray();
String str="abcdefg";
byte[] s1=str.getBytes();//将字符串转换成字符数组
char[] s2=str.toCharArray();//将字符串转换为字符数组
String valueOf(char[] chs)
char[] chs={'a','b','c','d','e'};
String s1=String.valueOf(chs);//将字符数组转换成字符串
valueOf可以将任意类型转换为字符串
toLowerCase();
toUpperCase();
String str1="ABCDEFG";
String str2="abcdefg";
String s1=str1.toLowerCase();//将小写字符串转换为大写
String s2=str2.toUpperCase();//将大写字符串转换为小写
六,字符串拼接
concat(String str)
String str1="abcd";
String str2="efg";
String s1=str1.concat(str2);//将两个字符串拼接成在一起
结果为abcdefg
七,字符串的代替
replace(char old,char new)
replace(String old,String new)
String str="abcdefg";
System.out.println(str.replace('a,'A');//用字符A代替a
System.out.print(str.replace("abc","ABC");//用字符串ABC代替abc
八,去除两端空格trim()
String str=" abcd ";
System.out.println(str.trim());
结果为abcd
九String的减法运算compareTo(String str)
与基本数据类型直接用-进行运算不同,引用类型的减法运算需要用compareTo()方法,
根据ASCII码表,从第一个字母进行减法运算,返回的就是这个减法的结果,如果前面几个字 母一样会根据两个字符串的长度进行减法运算返回的就是这个减法的结果,如果连个字符串一摸一样 返回的就是0。
String str1="abcdefg";
String str2="abcdefgh";
System.out.println(str1.compareTo(str2));
结果为-1