在 Java 中按空格分割字串
-
在 Java 中使用
split()
方法分割字串 -
在 Java 中使用
split()
和trim()
方法分割字串 -
在 Java 中使用
split()
方法分割字串 -
使用 Java 中的
StringTokenizer
類拆分字串 -
在 Java 中使用
split()
和compile()
方法拆分字串 -
在 Java 中使用
split()
方法分割字串
本教程介紹瞭如何在 Java 中按空格分割字串。
有幾種在 Java 中拆分字串的方法,例如 String
類的 split()
方法,StringUtils
類的 split()
方法,StringTokenizer
類,Pattern
的 compile()
方法等。
在 Java 中使用 split()
方法分割字串
Java 提供了一種方法 split()
來根據指定的 char 拆分字串。它是 String
類方法,在將字串吐出後返回一個字串陣列。我們可以使用其索引值進一步訪問陣列中的每個字串。
我們在 split()
方法中使用正規表示式以空格分隔字串。請參見下面的示例。
public class SimpleTesting {
public static void main(String[] args) {
String str = "Hello This is DelfStack";
String[] newStr = str.split("\\s+");
for (int i = 0; i < newStr.length; i++) {
System.out.println(newStr[i]);
}
}
}
輸出:
Hello
This
is
DelfStack
在 Java 中使用 split()
和 trim()
方法分割字串
如果字串的開頭包含空格,它將返回一個陣列,該陣列包含第一個為空的索引。為避免此問題,我們可以使用 String
類的 trim()
方法來修剪字串中的所有前導和後導空格,然後應用 split()
方法來獲取所有結果的陣列字串。
由於它返回一個陣列,因此我們應該使用 for
迴圈按索引遍歷它的所有元素。請參見以下示例。
public class SimpleTesting {
public static void main(String[] args) {
String str = " Hello This is DelfStack";
str = str.trim();
String[] newStr = str.split("\\s+");
for (int i = 0; i < newStr.length; i++) {
System.out.println(newStr[i]);
}
}
}
輸出:
Hello
This
is
DelfStack
在 Java 中使用 split()
方法分割字串
除了 Java String
類之外,還有另一個類 StringUtils
,它屬於 Apache
庫。因此,如果你使用的是 Apache
公共庫,則可以使用此類及其 split()
方法來按空格分隔字串。
此 split()
方法不使用正規表示式作為引數;它需要一個需要拆分的字串引數。請參見以下示例。
import org.apache.commons.lang3.StringUtils;
public class SimpleTesting {
public static void main(String[] args) {
String str = "Hello This is DelfStack";
String[] newStr = StringUtils.split(str);
for (int i = 0; i < newStr.length; i++) {
System.out.println(newStr[i]);
}
}
}
輸出:
Hello
This
is
DelfStack
使用 Java 中的 StringTokenizer
類拆分字串
我們可以使用 StringTokenizer
類通過空格分割字串。它將分割後的標記作為字串返回。請參見下面的示例。
import java.util.StringTokenizer;
public class SimpleTesting {
public static void main(String[] args) {
String str = "Hello This is DelfStack";
StringTokenizer tokens = new StringTokenizer(str, " ");
String[] newStr = new String[tokens.countTokens()];
int index = 0;
while (tokens.hasMoreTokens()) {
newStr[index] = tokens.nextToken();
System.out.println(newStr[index]);
index++;
}
}
}
輸出:
Hello
This
is
DelfStack
在 Java 中使用 split()
和 compile()
方法拆分字串
compile()
方法屬於 Pattern
類,然後可以使用 split()
方法獲取分割字串陣列。我們使用 compile()
方法來指定分割字元。請參見下面的示例。
import java.util.regex.Pattern;
public class SimpleTesting {
public static void main(String[] args) {
String str = "Hello This is DelfStack";
final Pattern space = Pattern.compile(" ");
String[] newStr = space.split(str);
for (int i = 0; i < newStr.length; i++) {
System.out.println(newStr[i]);
}
}
}
輸出:
Hello
This
is
DelfStack
在 Java 中使用 split()
方法分割字串
String
類的 split()
方法可用於在指定的索引上拆分字串。例如,如果我們只想分割前三個空格,我們可以簡單地將此數字作為第二個引數傳遞給方法。請參見下面的示例。
public class SimpleTesting {
public static void main(String[] args) {
String str = "Hello This is DelfStack";
String[] newStr = str.split(" ", 3);
for (int i = 0; i < newStr.length; i++) {
System.out.println(newStr[i]);
}
}
}
輸出:
Hello
This
is DelfStack