如何在 Java 中将字符串拆分成数组
本教程讨论了在 Java 中将字符串分割为数组的方法。
假设我们有一个逗号分隔的字符串 John, 23, $4500
。我们需要根据逗号拆分数据,并将其存储在像这样的数组中:["John", '23', "$4500"]
。这时 split()
方法就派上用场了。
Java 中使用 split(delimiter)
将字符串拆分为数组
我们需要传递定界符,根据定界符来分割字符串。split()
方法会在每一个定界符出现时将字符串拆分,并将每个值存储在数组中。下面的例子说明了这一点。
public class MyClass {
public static void main(String args[]) {
String data = "1,2,3,,5,6,,";
String[] split = data.split(",");
for (int i=0; i<split.length; i++)
System.out.println(split[i]);
System.out.println("Done");
}
}
输出:
1
2
3
5
6
虽然我们在最后有两个空字符串,但生成的数组并不包含最后两个空字符串。这是因为 split()
的默认行为从结果数组中删除了所有尾部的空字符串。
Java 中使用 split(regex, limit)
将字符串拆分为一个数组并保留尾部的空字符串
我们可以通过向 split()
函数传递一个额外的参数来覆盖这种行为:split(regex, limit)
。传递一个负的 limit
将确保 regex 模式被尽可能多地应用,从而包括所有分割后的空字符串。
下面的例子说明了这一点。
public class MyClass {
public static void main(String args[]) {
String data = "1,2,3,,5,6,,";
String[] split = data.split(",", -1);
for (int i=0; i<split.length; i++)
System.out.println(split[i]);
System.out.println("Done");
}
}
输出:
1
2
3
5
6
Done
我们可以看到,现在它已经打印了最后两个尾部的空字符串。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布,任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站。本站所有源码与软件均为原作者提供,仅供学习和研究使用。如您对本站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。