(最全整理)String类的常用方法

一、获取

1、length()    获取字符串长度

String str = "ahcckmvevawe";
System.out.println(str.length());
//输出12

2、charAt(int index)    返回下标对应的字符

String str = "ahcckmvevawe";
System.out.println(str.charAt(4));
//输出k

3、indexOf()    返回字符对应的下标值(有重复字符返回第一个)

String str = "ahcckmvevawe";
System.out.println(str.indexOf('c'));
//输出2

4、subString()    截取字符串,形成新的字符串

String str = "ahc/ckm/vev//awe//";
System.out.println(str.substring(4));
//输出 ckm/vev//awe//


String str = "ahc/ckm/vev//awe//";
System.out.println(str.substring(4,6));
//输出 ck

 二、常用功能

1、split()    字符串分割

/**默认limit=0,对结尾处的字符不进行分割**/
String str = "ahc/ckm/vev//awe//";
System.out.println(Arrays.stream(str.split("/")).collect(Collectors.toList()));
//输出 [ahc, ckm, vev, , awe]


/**limit<0,对结尾处的字符分割**/
String str = "ahc/ckm/vev//awe//";
System.out.println(Arrays.stream(str.split("/",-1)).collect(Collectors.toList()));
//输出 [ahc, ckm, vev, , awe, , ]


/**limit>0,指定分割成几组,不管后面的字符是什么(若不足,则取最大的组数)*/
String str = "ahc/ckm/vev//awe//";
System.out.println(Arrays.stream(str.split("/",3)).collect(Collectors.toList()));
//输出 [ahc, ckm, vev//awe//]

2、trim()    去除字符串两端空白

String str = "   ahcckmvevawe   ";
System.out.println(str.trim());
//输出 ahcckmvevawe

3、replace()    字符串替换

String str = "ahcckmvevawe";
System.out.println(str.replace("ah","xxxx"));
//输出 xxxxcckmvevawe

4、compareTo()     

  • 如果参数字符串等于此字符串,则返回值 0;
  • 如果此字符串小于字符串参数,则返回一个小于 0 的值;
  • 如果此字符串大于字符串参数,则返回一个大于 0 的值。
String str1 = "Strings";
String str2 = "Strings";
String str3 = "Strings123";

int result1 = str1.compareTo( str2 );
System.out.println("result1="+result1);

int result2 = str2.compareTo( str3 );
System.out.println("result2="+result2);

int result3 = str3.compareTo( str1 );
System.out.println("result2="+result3);

//输出 
result1=0
result2=-3
result3=3

5、isEmpty()    判断字符串是否为空

String str = "";
String str1 = "a";
System.out.println(str.isEmpty());//输出 true
System.out.println(str1.isEmpty());//输出 false

6、equals()    判断字符串内容是否相同(区分大小写)

String str1 = "abc";
String str2 = "ABC";
String str3 = "abc";
System.out.println(str1.equals(str2));//输出 false
System.out.println(str1.equals(str3));//输出 true

7、contains()    判断该字符串是否包含传递过来的字符串

String str1 = "ahcckmvevawe";
String str2 = "ahcck";
String str3 = "ah";
String str4 = "ahccm";
System.out.println(str1.contains(str2));//输出 true
System.out.println(str1.contains(str3));//输出 true
System.out.println(str1.contains(str4));//输出 false

8、startsWith()、endsWith()    判断字符串是否以传进来的字符串开头/结尾

String str1 = "  ccks";
String str2 = " ";
System.out.println(str1.startsWith(str2));//输出 true
System.out.println(str1.endsWith(str2));//输出 false

三、转换

1、toLowerCase()、toUpperCase()    将字符串转成大写字符/将字符串转为大写字符串

String str = "ahcckmvevawe";
System.out.println(str.toUpperCase(Locale.ROOT));//输出 AHCCKMVEVAWE
String str0 = "ahGCNSCEVAwe";
System.out.println(str0.toLowerCase(Locale.ROOT));//输出 ahgcnscevawe

2、toCharArray()    将String类型的字符串转化为char字符数组

String str = "abcde";
char[] arr = str.toCharArray();
System.out.println(arr[0]); //输出 a
System.out.println(arr[1]); //输出 b
System.out.println(arr[2]); //输出 c
System.out.println(arr[3]); //输出 d

3、comcat()    字符串拼接

String str1 = "abc";
String str2 = "def";
String str3 = str1.concat(str2);
System.out.println(str3);//输出 abcdef

4、valueOf()    基本数据类型都可以通过String.valueOf()方法转化为字符串表示形式

String str="1234";
System.out.println(str.valueOf(str)); //输出 1234


char[] c = {'a','b','c','d'};
String str0 = new String();
str = str.valueOf(c);
System.out.println(str); //输出 abcd
// 返回boolean参数的字符串表示形式
String.valueOf(boolean b);
// 返回char参数的字符串表示形式
String.valueOf(char c);
// *返回char数组参数的字符串表示形式
String.valueOf(char[] data);
// 返回char数组特定子数组的字符串表示形式
String.valueOf(char[] data,int offset,int count);
// 返回double参数的字符串表示形式
String.valueOf(double d);
// 返回float参数的字符串表示形式
String.valueOf(float f);
// *返回int参数的字符串表示形式
String.valueOf(int i);
// 返回long参数的字符串表示形式
String.valueOf(long l);
// 返回Object参数的字符串表示形式
String.valueOf(Object obj);

  • 8
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值