字符串比较方法:
boolean equals(Object anObject):
比较两个字符串是否相等,相等返回ture,否则返回false
publicstaticvoidmain(String[] args) { Stringa="asdf"; System.out.println(a.equals("aaa")); System.out.println(a.equals("asdf")); }
int compareTo(String s):
比较两个字符串是否相等,先按照字典次序大小比较,如果出现不等的字符,直接返回这两个字符的大小差值;如果前k个字符相等(k为两个字符长度最小值),返回两个字符串长度差值。
publicstaticvoidmain(String[] args) { Stringa="asdf"; System.out.println(a.compareTo("aaa")); System.out.println(a.compareTo("asdf")); System.out.println(a.compareTo("asd")); }
int compareToIgnoreCase(String str)
忽略字符大小写进行比较,返回值规则为:
- 先按照字典次序大小比较,如果出现不等的字符,直接返回这两个字符的大小差值;
- 如果前k个字符相等(k为两个字符长度最小值),返回两个字符串长度差值。
publicstaticvoidmain(String[] args) { Stringa="asdf"; System.out.println(a.compareToIgnoreCase("aaa")); System.out.println(a.compareToIgnoreCase("ASDF")); System.out.println(a.compareToIgnoreCase("asd")); }
字符串查找方法:
char charAt(int index):
返回index位置上字符,如果index为负数或者越界,抛出IndexOutOfBoundsException异常。
publicstaticvoidmain(String[] args) { Stringa="asdf"; System.out.println(a.charAt(0)); System.out.println(a.charAt(3)); System.out.println(a.charAt(5)); }
int indexOf(int ch):
返回ch第一次出现的位置,没有则返回-1
publicstaticvoidmain(String[] args) { Stringa="asdddf"; System.out.println(a.indexOf('d')); System.out.println(a.indexOf('a')); System.out.println(a.indexOf('h')); }
int indexOf(int ch, int fromIndex):
从fromIndex位置开始找 ch 返回第一次出现的位置,没有返回-1
publicstaticvoidmain(String[] args) { Stringa="asdddf"; System.out.println(a.indexOf('d', 3)); System.out.println(a.indexOf('a', 1)); System.out.println(a.indexOf('h',0)); }
int indexOf(String str):
返回str第一次出现的位置,没有返回-1
publicstaticvoidmain(String[] args) { Stringa="asdddf"; System.out.println(a.indexOf("dd")); System.out.println(a.indexOf("ss")); }
int indexOf(String str, int fromIndex):
从fromIndex位置开始找str第一次出现的位置,没有返回-1
publicstaticvoidmain(String[] args) { Stringa="asdddf"; System.out.println(a.indexOf("dd", 3)); System.out.println(a.indexOf("ss", 0)); }
int lastIndexOf(int ch, int fromIndex):
从fromIndex位置开始找,从后往前找ch第一次出现的位置,没有返回-1
publicstaticvoidmain(String[] args) { Stringa="asdddf"; System.out.println(a.lastIndexOf('d', 2)); System.out.println(a.lastIndexOf('d', 3)); System.out.println(a.lastIndexOf('d', 4)); System.out.println(a.lastIndexOf('g', 5)); }
int lastIndexOf(String str):
从后往前找,返回str第一次出现的位置,没有返回-1
publicstaticvoidmain(String[] args) { Stringa="asdddf"; System.out.println(a.lastIndexOf("dd")); System.out.println(a.lastIndexOf("as")); System.out.println(a.lastIndexOf("bv")); }
int lastIndexOf(String str, int fromIndex):
从后往前找str第一次出现的位置,如果此位置的下标不大于fromIndex则返回,否则继续往前找。没有返回-1
publicstaticvoidmain(String[] args) { Stringa="asdddf"; System.out.println(a.lastIndexOf("dd", 3)); System.out.println(a.lastIndexOf("dd", 2)); System.out.println(a.lastIndexOf("dd", 1)); System.out.println(a.lastIndexOf("as", 0)); System.out.println(a.lastIndexOf("bv", 0)); }
字符串的转化
数字转字符串
字符串转整形:
publicstaticvoidmain(String[] args) { Stringstr="123"; inta1=Integer.parseInt(str); longa2=Long.parseLong(str); System.out.println(a1+" "+a2); }
字符串转浮点型:
publicstaticvoidmain(String[] args) { Stringstr="123"; doublea2=Double.parseDouble(str); floata3=Float.parseFloat(str); System.out.println(a2+" "+a3); }
String.valueOf():
将所有基本类型值转化为字符串类型
publicstaticvoidmain(String[] args) { Strings1=String.valueOf(1234); Strings2=String.valueOf(12.34); Strings3=String.valueOf(true); Strings4=String.valueOf('a'); System.out.println(s1); System.out.println(s2); System.out.println(s3); System.out.println(s4); }
String toUpperCase();
String toLowerCase():
返回一个将原字符串转为大写的新串 。
返回一个将原字符串转为小写的新串 。
publicstaticvoidmain(String[] args) { Strings1="heLLo"; Strings2="HEllO"; System.out.println(s1.toUpperCase()); System.out.println(s2.toLowerCase()); }
char[] toCharArray();
String(char value[]):
将字符串转为数组;原字符串不会受到影响
将数组转为字符串;原数组不会受到影响
publicstaticvoidmain(String[] args) { Strings="hello"; char[] ch=s.toCharArray(); System.out.println(Arrays.toString(ch)); Strings2=newString(ch); System.out.println(s2); }
字符串替换方法:
String replaceAll(String regex, String replacement):
替换所有的指定内容
publicstaticvoidmain(String[] args) { Stringstr="helloworld" ; System.out.println(str.replaceAll("l", "O")); }
String replaceFirst(String regex, String replacement)
替换首个内容
publicstaticvoidmain(String[] args) { Stringstr="helloworld" ; System.out.println(str.replaceFirst("l", "O")); }
String[] split(String regex):
将字符串全部拆分
publicstaticvoidmain(String[] args) { Stringstr="hello world hello" ; String[] result=str.split(" ") ; // 按照空格拆分for(Strings: result) { System.out.println(s); } }
String substring(int beginIndex, int endIndex):
截取 [ beginIndex ,endIndex ) 范围内的字符串
publicstaticvoidmain(String[] args) { Stringstr="helloworld" ; System.out.println(str.substring(0, 5)); }