Java String substring()方法示例
时间:2020-02-23 14:34:33 来源:igfitidea点击:
Java String substring()方法返回此字符串的子字符串。
此方法始终返回一个新字符串,而原始字符串则保持不变,因为String在Java中是不可变的。
Java String substring()方法
Java String子字符串方法已重载,并且具有两个变体。
substring(int beginIndex):此方法返回一个新字符串,该字符串是该字符串的子字符串。
子字符串以指定索引处的字符开头,并延伸到该字符串的末尾。substring(int beginIndex,int endIndex):子字符串从指定的beginIndex开始,并扩展到索引endIndex – 1处的字符。
因此,子字符串的长度为(endIndex – beginIndex)。
String substring()方法要点
如果满足以下任何条件,则两个字符串子字符串方法都可以抛出
IndexOutOfBoundsException
。endIndex大于此String对象的长度
beginIndex大于endIndex
在两个子字符串方法中,beginIndex是包含的,endIndex是排除的。
Java String substring()示例
这是Java中子字符串的简单程序。
package com.theitroad.util; public class StringSubstringExample { public static void main(String[] args) { String str = "www.theitroad.local"; System.out.println("Last 4 char String: " + str.substring(str.length() - 4)); System.out.println("First 4 char String: " + str.substring(0, 4)); System.out.println("website name: " + str.substring(4, 14)); } }
上面的子字符串示例程序的输出是:
Last 4 char String: .com First 4 char String: www. website name: theitroad
使用substring()方法检查回文
我们可以使用substring()方法来检查String是否是回文。
package com.theitroad.util; public class StringPalindromeTest { public static void main(String[] args) { System.out.println(checkPalindrome("abcba")); System.out.println(checkPalindrome("XYyx")); System.out.println(checkPalindrome("871232178")); System.out.println(checkPalindrome("CCCCC")); } private static boolean checkPalindrome(String str) { if (str == null) return false; if (str.length() <= 1) { return true; } String first = str.substring(0, 1); String last = str.substring(str.length() - 1); if (!first.equals(last)) return false; else return checkPalindrome(str.substring(1, str.length() - 1)); } }
其中我们检查第一个字母和最后一个字母是否相同。
如果它们不相同,则返回false。
否则,再次调用该方法以递归方式传递子字符串,并删除第一个和最后一个字母。