欢迎访问宙启技术站
智能推送

使用Java函数将字符串分割成数组的方法

发布时间:2023-05-20 13:10:58

在Java编程中,我们经常需要将一个字符串分割成数组,这种操作十分常见。在本文中,我们将介绍使用Java函数将字符串分割成数组的方法。

Java 中有多种函数可以将字符串分割成数组:split()、StringTokenizer()、StringUtils.split()。这些函数在处理字符串时各有优缺点,我们需要根据具体需求来选择合适的函数。

1. split() 方法

split() 方法是 String 类中的一个方法,可以根据指定的分隔符将字符串分割成数组。语法如下:

String[] split(String regex)

其中,regex 为分隔符,可以是正则表达式。

示例代码:

String str = "hello,world";

String[] arr = str.split(",");

System.out.println(Arrays.toString(arr));

输出结果:

[hello, world]

在上面的代码中,我们通过调用 split() 方法将字符串 str 根据分隔符 “,” 分割成字符串数组 arr。

需要注意的是,split() 方法的参数为正则表达式,如果传入的参数不是正则表达式,Java 会自动将其转换为正则表达式。

2. StringTokenizer() 方法

StringTokenizer() 方法是 Java 中的一个类,可以将字符串按照指定的分隔符分割成多个部分。在 StringTokenizer 类中,有以下两个常用方法:

hasMoreTokens():判断是否还有分隔符,如果有,返回 true,否则返回 false。

nextToken():返回分隔符前的字符串。

示例代码:

String str = "hello,world";

StringTokenizer st = new StringTokenizer(str, ",");

while (st.hasMoreTokens()) {

    System.out.println(st.nextToken());

}

输出结果:

hello

world

在上面的代码中,我们先创建了一个 StringTokenizer 对象 st,然后使用 while 循环判断是否还有分隔符,如果有,就调用 nextToken() 方法返回分隔符前的字符串。

需要注意的是,StringTokenizer() 方法只能指定单一分隔符,而不能指定多个分隔符。

3. StringUtils.split() 方法

StringUtils 是 Apache Commons Lang 库中的一个类,该类提供了很多关于字符串操作的工具函数。其中,split() 方法可以将字符串按照指定的分隔符分割成数组。

语法如下:

String[] split(String str, String separatorChars)

其中,str 为需要分割的字符串,separatorChars 为分隔符。

示例代码:

String str = "hello,world";

String[] arr = StringUtils.split(str, ",");

System.out.println(Arrays.toString(arr));

输出结果:

[hello, world]

在上面的代码中,我们使用 StringUtils.split() 方法将字符串 str 根据分隔符 “,” 分割成字符串数组 arr。

需要注意的是,StringUtils.split() 方法与 split() 方法相似,但可以处理空串和 null 值。

综上,以上就是使用 Java 函数将字符串分割成数组的方法。在实际开发中,我们可以根据具体需求选择适合的函数,不同的函数有不同的优点。