我想通过分隔符“|”拆分字符串在Java中获取String数组,这是我的代码:
String str = "123|sdf||";
String[] array = str.split("\\|");
我将获得包含2个元素的数组:"123","sdf"
。
我希望数组有4个元素:"123","sdf","",""
;
我可以使用任何现有的课程吗?我也尝试过StringTokernizer,不起作用
答案 0 :(得分:8)
split()
方法有一个秘密的,可选的第二个参数!
String[] array = str.split("\\|", -1); // won't discard trailing empty elements
默认情况下,split()
(带有一个参数)会从结果中丢弃尾随的空元素。
如果提供了第二个参数,则此默认丢弃行为将被关闭,如果为正,则限制提取的元素数量(但如果找到的元素数量较少,则返回小于此值),或者如果为负数则返回无限元素。
在javadoc中了解它。