Java split()方法详解以及split()后开头多出/
时间: 2023-08-11 15:04:35 浏览: 36
Java的split()方法是用于将一个字符串分割成多个子字符串,并将它们存储在一个数组中。这个方法接收一个参数,用于指定分割字符串的分隔符。例如,如果我们有一个字符串"hello world",我们可以使用空格作为分隔符,将它分割成两个子字符串"hello"和"world"。
下面是一个示例代码:
```
String str = "hello world";
String[] words = str.split(" ");
System.out.println(Arrays.toString(words));
```
输出结果为:[hello, world]
在使用split()方法时,有时会出现开头多出/的情况。这是因为在指定分隔符时,我们使用了正则表达式。在正则表达式中,/表示正则表达式的开始和结束符号。如果我们使用/作为分隔符,Java会将其解释为正则表达式的开始和结束符号,因此在分割结果中会出现多余的/。
为了避免这种情况,我们可以使用转义字符\来将/转义成普通字符。例如,如果我们有一个字符串"/usr/local/bin",我们可以使用以下代码来将其分割成三个子字符串:
```
String str = "/usr/local/bin";
String[] words = str.split("\\/");
System.out.println(Arrays.toString(words));
```
输出结果为:[, usr, local, bin]
相关问题
java String.split()方法详解
String.split()方法是Java中用于分隔字符串的方法之一。它的作用是将一个字符串按照指定的分隔符分割成多个子字符串,并将这些子字符串存储在一个字符串数组中。
String.split()方法有两种重载形式:
1. public String[] split(String regex)
2. public String[] split(String regex, int limit)
其中,第一个参数regex是分隔符的正则表达式,第二个参数limit是分隔后子字符串的最大个数,超过这个数目的子字符串将被忽略。如果limit为0,则表示不限制子字符串的个数。
下面是一个简单的示例:
```
String str = "Hello World!";
String[] arr = str.split(" ");
for (String s : arr) {
System.out.println(s);
}
```
输出结果为:
```
Hello
World!
```
在这个示例中,字符串"Hello World!"被按照空格分隔成了两个子字符串,分别是"Hello"和"World!"。这些子字符串被存储在一个字符串数组中,并通过循环输出。
需要注意的是,String.split()方法中的分隔符是一个正则表达式,因此需要注意一些特殊字符的转义,比如点号、星号等,如果不转义,可能会导致意想不到的错误。另外,如果分隔符是一个空字符串,那么将会把原字符串拆分成一个一个的单个字符。
对于一些常见的分隔符,Java也提供了一些快捷的方法,比如String.split("\\s+")可以用来分隔空格或者多个空格,String.split(",")可以用来分隔逗号等。
java split方法
Java中的split()方法是一个字符串方法,用于将字符串拆分为子字符串。它接受一个正则表达式作为参数,并将字符串根据该正则表达式拆分为多个子字符串,并返回一个字符串数组。
下面是split()方法的语法:
```
String[] split(String regex)
```
其中,`regex`参数是用于拆分字符串的正则表达式。
以下是一个示例:
```java
String str = "Java is a popular programming language";
String[] words = str.split("\\s+"); // 使用空格拆分
for (String word : words) {
System.out.println(word);
}
```
输出结果:
```
Java
is
a
popular
programming
language
```