一、概述
Java字符串分割是一项基本操作,Java语言提供了多种分割字符串的方法和工具类,可以方便地实现字符串的分割。Java字符串常用来作为文件路径、URL地址、配置文件等需要分割处理的场景。
二、String.split方法
Java中,最常用的字符串分割方法是使用String类的split()方法,该方法接受一个字符串作为分割符,将原字符串分割成字符串数组。示例代码如下:
String str = "Hello,World,Java"; String[] arr = str.split(","); for(String s : arr){ System.out.println(s); }
输出结果为:
Hello World Java
该方法还可以通过正则表达式作为分隔符,可以更灵活地实现分割。例如:
String str = "Hello World Java"; String[] arr = str.split("\\s"); for(String s : arr){ System.out.println(s); }
输出结果为:
Hello World Java
三、StringTokenizer类
Java中还提供了另一个字符串分割工具类StringTokenizer,该类可以指定多个分隔符,并且可以控制是否返回分隔符。示例代码如下:
String str = "Java;C++;Python"; StringTokenizer st = new StringTokenizer(str, ";+", true); while(st.hasMoreTokens()){ System.out.println(st.nextToken()); }
输出结果为:
Java ; C++ ; Python
四、Guava Splitter类
Google Guava是一个优秀的Java库,其中的Splitter类提供了丰富的字符串分割功能。该类可以指定多种分隔符,还可以去除分割结果中的空白部分。示例代码如下:
String str = "Java, C++, Python"; Iterableit = Splitter.on(',') .trimResults().omitEmptyStrings() .split(str); for(String s : it){ System.out.println(s); }
输出结果为:
Java C++ Python
五、Apache Commons StringUtils类
Apache Commons是另一个优秀的Java库,在其中的StringUtils类中提供了更加丰富的字符串操作工具,其中包括字符串分割。可以指定多个分隔符、去除空白部分、忽略重复分割符等多种功能。示例代码如下:
String str = "Java,;C++;Python::Ruby"; String[] arr = StringUtils.split(str, ",;:", 0); for(String s : arr){ System.out.println(s); }
输出结果为:
Java C++ Python Ruby
六、总结
在Java中,有多种实现字符串分割的方法和工具,可以根据需要选用适合的方法。String.split是最基本的方法,方便简单;StringTokenizer可以指定多个分隔符和是否返回分隔符;Guava Splitter提供了丰富的分割功能,可以去除空白部分;Apache Commons StringUtils提供了更广泛的字符串操作工具,分割功能更加灵活。