您的位置:

Java字符串分割实现教程

一、概述

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";
Iterable it = 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提供了更广泛的字符串操作工具,分割功能更加灵活。