java-String 1.3 字符串其它常用方法

写在前面:https://blog.csdn.net/weixin_45857051/article/details/107877785

一、字符串-获取相关:长度、字符、索引

1.1、获取字符串长度:length

public int length();
获取字符串当中含有的字符个数,拿到字符串长度;

String str0 = "adlgjadlkgjasdjg";
int length0 = str0.length();
int length1 = "nmhdsljg".length();

System.out.println("字符串0的长度是:" + length0);
System.out.println("字符串0的长度是:" + str0.length());
System.out.println("字符串1的长度是:" + length1);

1.2、获取单个字符:charAt

public char charAt(int index):
获取指定索引位置的单个字符。
注意:字符串中第一个字符索引是0,最后一个是length()-1。

char ch = "Hello".charAt(1);
System.out.println("在1号索引位置的字符是:" + ch);

1.3、获取索引值:indexOF

public int indexOf(String str);
查找参数字符串在本字符串从左边起当中首次出现的索引位置;
如果没有,返回-1值;

public int indexOf(String str, intfromIndex);
从fromIndex位置向后查找;

public int lastIndexOf(String str);
该方法从字符串的末尾位置向前查找。

public int lastIndexOf(String str, intfromIndex);
fromIndex位置向前查找。

String strA = "HelloWorldHelloWorld";
int a1 = strA.indexOf("llo");
int a2 = strA.indexOf("llo", 3);
int a3 = strA.lastIndexOf("llo");
int a4 = strA.lastIndexOf("llo", 6);
System.out.println("第一次索引值是:" + a1); // 2
System.out.println("第二次索引值是:" + a2); // 12
System.out.println("第三次索引值是:" + a3); // 12
System.out.println("第四次索引值是:" + a4); // 2

注意:从后往前找,也是找正常输入顺序的字符串。

int a5 = strA.lastIndexOf("oll"); //反着输入,会搜不到
System.out.println("第五次索引值是:" + a5); // -1
System.out.println("HelloWorld".indexOf("abc")); // -1

二、字符串 处理相关:分割、截取、去首尾空格、拼接

2.1、字符串分割

public String[] split(String regex);
regular expression 按照参数的规则,将字符串分成若干部分。

String str1 ="aaa,bbb,ccc";
String[] array1 = str1.split(",");
for (int i = 0; i < array1.length; i++) {
    System.out.println(array1[i]);
}

String str2="aaa bbb ccc";
String[] array2 = str2.split(" ");
for (int i = 0; i < array2.length; i++) {
System.out.println(array2[i]);
}

上面两个输出结果均为:

aaa
bbb
ccc

注意事项:
split方法的参数其实是一个“正则表达式”,今后学习。
如果按照英文句点“.”进行切分,必须写“\\.”(两个反斜杠)
如果不加,运行虽不报错,但得到的数组长度为0

正确写法如下

String str3 ="aaa.bbb.ccc";
String[] array3 = str3.split("\\.");
System.out.println(array3.length); //3
for (int i = 0; i < array3.length; i++) {
System.out.println(array3[i]);
}

2.1、字符串截取

public String substring(int beginIndex);
截取从参数位置,一直到字符串末尾,返回新字符串。

public String substring(int beginIndex,int endIndex);
截取从beginIndex开始,一直到endIndex结束,中间的字符串。
注意:[begin,end),是左闭右开区间,包含左边,不包含右边,即取的最后一个字符位置为endIndex-1。

String str1 = "HelloWorld";
String str2 = str1.substring(5);
System.out.println(str1); //HelloWorld,原封不动
System.out.println(str2); //World,新字符串

String str3 = str1.substring(4, 7);
System.out.println(str3); //oWo

2.3、去首尾空格:trim

public String trim();
去除字符串两端的空格,中间的空格不变,一般用于登陆注册时

String str ="   zhu ce   ";
String str1=str.trim();
int a = str.length();//a = 12
int b = str1.length();//b = 6
System.out.println(a+"\n"+b);
System.out.println(str1);

输出结果为:

12
6
zhu ce

2.4、字符串拼接:concat

(一般使用+号)
public String concat(String str);
将当前字符串和参数字符串拼接成为返回值新的字符串;

String str1 = "Hello";
String str2 = "World";
String str3 = str1.concat(str2);
System.out.println(str1); //Hello,原封不动
System.out.println(str2); //World,原封不动
System.out.println(str3); //HelloWorld,新的字符串
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值