Java函数:如何使用String中的substring函数截取字符串子串?
字符串是Java中非常重要的数据类型之一,由于字符串本身是一组字符的序列,很多时候我们需要对其进行截取操作,例如只需要获取其中的一个子串。在Java中,提供了substring()这个方法来进行字符串的截取操作。本文将会详细介绍如何使用Java中String中的substring()函数来截取字符串子串。
一、什么是String的substring()方法?
在Java中,String类中提供的一个substring()方法可以截取某个字符串的子串,方法定义如下:
public String substring(int beginIndex, int endIndex)
其中,参数beginIndex表示截取子串的起始下标位置,参数endIndex表示截取子串的结束下标位置(不包括该位置处的字符),返回值为截取后的子串。若只传递一个参数,则表示从该下标位置开始截取到字符串末尾。
二、如何使用substring()函数截取字符串子串
下面我们通过一些示例代码来学习如何使用substring()函数来截取字符串子串。
示例一:
要求:从字符串"Hello, World!"中截取子串"Hello"。
代码如下:
String str = "Hello, World!";
String subStr = str.substring(0, 5);
System.out.println(subStr);
解析:这里我们把beginIndex设置为0,把endIndex设置为5,表示从字符串中 个字符开始截取,一直截取到第5个字符(不包括该位置处的字符),即截取了子串"Hello"。通过这个例子我们可以看出,范围的start在left,而end在right。
实际上,我们也可以从右侧开始截取:
示例二:
要求:从字符串"Hello, World!"中截取子串"World"。
代码如下:
String str = "Hello, World!";
String subStr = str.substring(7, 12);
System.out.println(subStr);
解析:这里我们把beginIndex设置为7,把endIndex设置为12,表示从字符‘W’开始截取,一直截取到字符‘d’(不包括该位置处的字符),即截取了子串"World"。
下面我们来看一个比较实际的例子,利用substring函数获取身份证上的区域编码:
示例三:
要求:从字符串"110101199003076115"中截取身份证的区域编码。
代码如下:
String idCard = "110101199003076115";
String areaCode = idCard.substring(0, 6);
System.out.println(areaCode);
解析:这里我们把beginIndex设置为0,把endIndex设置为6,表示从身份证号码上 个字符开始截取,一直截取到第6个字符(不包括该位置处的字符),即截取了身份证的区域编码"110101"。
三、注意事项
在使用substring()函数时需要注意以下几点:
1.入参下标必须在[0,length-1]范围内,否则会抛出StringIndexOutOfBoundsException异常;
2.如果endIndex小于beginIndex,则返回空串;
3.当只有一个参数时,表示从该下标位置开始截取到字符串末尾。
四、总结
截取字符串在Java编程中是非常常见的需求,可以使用String的substring方法来实现。在使用substring()函数时需要注意传入的start和end参数的值,可以通过一些具体的例子来学习和理解。同时,在实际使用中需要注意异常和边界问题。
