【Java回顾】String类的常用方法

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

猜你喜欢

转载自blog.csdn.net/Y1013768371/article/details/89041191
今日推荐