1. 用字符数组value创建一个String对象
方法:
public String(char[] value)
实例:
char[] value ={'a','b','c','d'}; String str = new String(value);//abcd //相当于String str = new String("abcd")
2. 用字符数组以x开始的n个字符创建一个String对象
方法:
public String(char chars[], int offset, int count)
实例:
char[] value ={'a','b','c','d'}; String str = new String(value, 1, 2);//bc //相当于String str = new String("bc");
3. 获取字符串长度
方法:
public int length()
实例:
String str = new String("478bhjd56"); int strlength = str.length();//9
4. 获取字符串某一位置的字符
方法:
public char charAt(int index)
实例:
String str = new String("43dfzyd"); char ch = str.charAt(4);//z
注意:字符串中第一个字符索引是0,最后一个是length()-1。
5.获取字符串的子串
方法:
public String substring(int beginIndex) //该方法从beginIndex位置起, //从当前字符串中取出剩余的字符作为一个新的字符串返回。 public String substring(int beginIndex,int endIndex) //该方法从beginIndex位置起,从当前字符串中 //取出到endIndex-1位置的字符作为一个新的字符串返回。 //子串的长度为endIndex-1-beginIndex+1 = endIndex-beginIndex
实例:
String str1 = newString("asdfzxc"); String str2 = str1.substring(2);//dfzxc String str3 = str1.substring(2,5);//dfz
6.字符串的比较
方法:
public int compareTo(String str) //该方法是对字符串内容按字典顺序进行大小比较, //通过返回的整数值指明当前字符串与参数字符串的大小关系。 //比较是基于字符串中每个字符的Unicode值。 //若当前对象比参数大则返回正整数,反之返回负整数,相等返回0。 public int compareToIgnoreCase (String str) //与compareTo方法相似,但忽略大小写。 public boolean equals(Object obj) //比较当前字符串和参数字符串,在两个字符串相等的时候返回true,否则返回false。 public boolean equalsIgnoreCase(String str) //与equals方法相似,但忽略大小写。
实例:
String str1 = new String("abc"); String str2 = new String("ABC"); int a = str1.compareTo(str2);//32 int b = str1.compareToIgnoreCase(str2);//0 boolean c = str1.equals(str2);//false boolean d =str1.equalsIgnoreCase(str2);//true
7.查找子串在字符串中的位置
方法:
public int indexOf(String str) //用于查找当前字符串中字符或子串,返回字符或 //子串在当前字符串中从左边起首次出现的位置,若没有出现则返回-1。 public int indexOf(String str, int fromIndex) //该方法与第一种类似,区别在于该方法从fromIndex位置向后查找。 public int lastIndexOf(String str) //该方法与第一种类似,区别在于该方法从字符串的末尾位置向前查找。 public int lastIndexOf(String str, int fromIndex) //该方法与第二种方法类似,区别于该方法从fromIndex位置向前查找。 public boolean startsWith(String prefix) //如果参数表示的字符序列是此字符串表示的字符序列的前缀,则返回true;否则返回false。如果参数是空字符串,或者等于此String对象(用equals(Object)方法确定),则返回true。 public boolean startsWith(String prefix , int toffset) //如果参数表示的字符序列是此对象从索引toffset处开始的子字符串,则返回true;否则返回false。如果toffset为负或大于此String对象的长度,则结果为false;否则结果与该表达式的结果相同。 public boolean endsWith(String value) //true如果由参数表示的字符序列是由该对象表示的字符序列的后缀; false否则。 注意,结果将是true如果参数是空字符串或等于该String如由所确定的对象equals(Object)方法。
实例:
String str="tao.jpg"; System.out.println("点的索引:"+str.indexOf(".")); String str1=str.substring(str.lastIndexOf(".")); System.out.println("点的索引:"+str1.startsWith(".")); System.out.println("点的索引:"+str1.endsWith(".")); System.out.println("陶相山陶相山陶相山"+str1); /*输出: 点的索引:3 点的索引:true 点的索引:false 陶相山陶相山陶相山.jpg */
8.字符串中字符的大小写转换
方法:
public String toLowerCase() //返回将当前字符串中所有字符转换成小写后的新串 public String toUpperCase() //返回将当前字符串中所有字符转换成大写后的新串
实例:
String str = new String("JavaStudy"); String str1 = str.toLowerCase(); //str1 = "javastudy" String str2 = str.toUpperCase(); //str2 = "JAVASTUDY" testString(str);//string不可变 System.out.println(str);//JavaStudy
9.字符串两端去空格
方法:
String trim() //去除字符串两端的空格,中间的空格不变,一般用于登陆注册时
实例:
String str = " z dali "; String str1 = str.trim(); int a = str.length();//a = 8 int b = str1.length();//b = 6 System.out.println(a+"\n"+b);
10.将字符串分割成字符串数组
方法:
String[] split(String str)
实例:
String str = "sgs#jkc#eer"; String[] str1 = str.split("#"); for (int i = 0; i < str1.length; i++) { System.out.println(str1[i]); //输出结果是sgs jkc eer }
11.基本类型转换为字符串
方法:
static String valueOf(xxx xx)
实例:
String s1 = String.valueOf(12.99); System.out.println(s1); //double类型转string类型
12.替换字符串
方法:
public String replace(char oldChar, char newChar) //用字符newChar替换当前字符串中所有的oldChar字符, //并返回一个新的字符串。 public String replaceFirst(String regex,String replacement) //该方法用字符replacement的内容替换当前字符串中遇到的 //第一个和字符串regex相匹配的子串,应将新的字符串返回。 public String replaceAll(String regex,String replacement) //该方法用字符replacement的内容替换当前字符串中遇到的所有 //和字符串regex相匹配的子串,应将新的字符串返回。
实例:
String str = "hjdfjdskdd"; String str1 = str.replace('h','g'); //str1 ="gjdfjdskdd" String str2 =str.replace("hj","xxx"); //str2 = "xxxdfjdskdd" String str3 =str.replaceFirst("d","c"); //str3 = "hjcfjdskdd" String str4 =str.replaceAll("hj","xxx"); //str4 = "xxxdfjdskdd" System.out.println(str1+"\n"+str2+"\n"+str3+"\n"+str4);
13.将字符串转换为新的字符数组
方法:
public char[] toCharArray(); //一个新分配的字符数组,其长度是该字符串的长度,其内容被初始化为包含由该字符串表示的字符序列。
实例:
String s = "AaB"; char[] a = s.toCharArray(); for (char c : a) { System.out.println(c); } /*输出: A a B */
14.查找子字符串是否存在
方法:
public bool Contains(string value); //判断一个字符串中是否存在另一个字符串,存在则输出true,反之,则为false
实例:
String s = "ABCDEFG"; System.out.println(s.contains("ABCD"));//true
15.串联对象数组,在各成员间使用指定的分隔符
方法:
public static string join(string separator,params string[] value) //separator:要用作分隔符的字符串。 只有在 separator 具有多个元素时,value 才包括在返回的字符串中。 //value:一个数组,其中包含要连接的元素。
实例:
String[] parts = { "Apple", "Orange", "Banana", "Pear", "Peach" }; String result = String.join(", ", parts); System.out.println(result); //Apple, Orange, Banana, Pear, Peach
16.连接成一个字符串
方法:
public static string Concat(string[] str); //str - String被连接到这个 String
实例:
String s ="ABCD"; System.out.println(s.concat("efg")); //输出:ABCDefg
转载原文:
1.https://blog.csdn.net/qq_25406669/article/details/79021911
2.https://blog.csdn.net/justtestlike/article/details/75258668