📜  将字符串拆分为数组 java (1)

📅  最后修改于: 2023-12-03 15:09:35.464000             🧑  作者: Mango

将字符串拆分为数组 Java

在Java编程中,需要将字符串拆分成数组的情况非常常见。通常情况下,开发者需要根据特定的分隔符将字符串拆分为数组项。

Java中提供了多种方法来完成此任务。在本文中,我们将学习如何使用这些方法将字符串拆分为数组。

方法一:使用String类的split()方法

Java String类的split()方法允许我们使用正则表达式作为参数来将字符串拆分为数组。例如,我们可以使用以下代码将字符串拆分为数组:

String str = "Hello World";
String[] arrOfStr = str.split(" ");

上面的代码将使用空格作为分隔符将字符串拆分为数组。我们还可以使用其他分隔符,如逗号、句号、破折号等。

String str = "apple,orange,banana";
String[] arrOfStr = str.split(",");

上面的代码将使用逗号作为分隔符将字符串拆分为数组,结果如下所示:

["apple", "orange", "banana"]

需要注意的是,split()方法将返回一个数组。如果原始字符串无法被拆分,则返回只包含原始字符串的数组。

方法二:使用StringTokenizer类

Java中还提供了StringTokenizer类,它允许我们将字符串按指定的分隔符拆分为多个标记,并遍历这些标记。

String str = "Hello World";
StringTokenizer st = new StringTokenizer(str, " ");
while (st.hasMoreTokens()) {
    System.out.println(st.nextToken());
}

上面的代码将使用空格作为分隔符将字符串拆分为标记,并依次输出这些标记。输出结果如下所示:

Hello
World

需要注意的是,StringTokenizer类并非线程安全的。如果需要在多线程环境中使用,请考虑使用String类的split()方法。

方法三:使用guava库

除了Java自带的方法外,Google的guava库也提供了一种简单的方式来将字符串拆分为数组。使用该库的Splitter类,我们可以非常轻松地实现字符串拆分操作。

String str = "Hello,World";
Iterable<String> result = Splitter.on(',')
                                  .trimResults()
                                  .omitEmptyStrings()
                                  .split(str);

上面的代码使用逗号作为分隔符将字符串拆分为数组,并过滤掉空字符串。需要注意的是,使用该库需要先添加guava依赖。

总结

在本文中,我们介绍了将字符串拆分为数组的三种方法,分别是使用Java String类的split()方法、StringTokenizer类以及guava库中的Splitter类。需要根据具体的情况选择合适的方法。