相关疑难解决方法(0)

Java String拆分无法正常工作

Java专家,

请查看下面的拆分命令代码,让我知道为什么不捕获最后两个空值.

String test = "1,O1,,,,0.0000,0.0000,,";
String[] splittest = test.split(",");
System.out.println("length -"+splittest.length);
for (String string : splittest) {
    System.out.println("value"+string);
}
Run Code Online (Sandbox Code Playgroud)

结果我得到了

length -7
value1
valueO1
value
value
value
value0.0000
value0.0000
Run Code Online (Sandbox Code Playgroud)

令人惊讶的是,长度为7,因为它应该是9,也可以看到0.0000之后的值,即两个最后的空值不会到来.让我们说现在,如果我改变字符串测试"1,O1 ,,,, 0.0000,0.0000,0,0"

String test = "1,O1,,,,0.0000,0.0000,0,0";
String[] splittest = test.split(",");
System.out.println("length -"+splittest.length);
for (String string : splittest) {
    System.out.println("value"+string);
}
Run Code Online (Sandbox Code Playgroud)

我说得对

length -9
value1
valueO1
value
value
value
value0.0000
value0.0000
value0
value0
Run Code Online (Sandbox Code Playgroud)

我不认为我做错了.这是一个错误吗?JAVA版本 - jdk1.6.0_31

java split

2
推荐指数
2
解决办法
3391
查看次数

在java 1.6中String.split的行为?

我的代码是:

String s = "1;;;; 23;;";
System.out.println(s.split(";").length);
Run Code Online (Sandbox Code Playgroud)

并作为输出5.源代码split是:

public String[] split(String regex) {
        return split(regex, 0);
    }
Run Code Online (Sandbox Code Playgroud)

并且文件说:

此方法的工作方式就像调用带有给定表达式和limit参数为零的双参数split(java.lang.String,int)方法一样.因此,结尾的空字符串不包含在结果数组中.

例如,字符串"boo:and:foo"会使用以下表达式产生以下结果:

Regex Result
: { "boo", "and", "foo" }
o { "b", "", ":and:f" }
Run Code Online (Sandbox Code Playgroud)

如果我打印我的字符串:

1



 23
Run Code Online (Sandbox Code Playgroud)

我不应该从这样的1;;;; 23;;东西中得到什么{"1", "", "", "", " 23", ""}

java split java-6

2
推荐指数
1
解决办法
1788
查看次数

如何避免ArrayIndexOutOfBoundsException或IndexOutOfBoundsException?

如果你的问题是java.lang.ArrayIndexOutOfBoundsException在我的代码中得到了一个,我不明白为什么会发生这种情况.它是什么意思,我该如何避免它?

这是关于这个主题的最全面的Canonical信息集合 java.lang.ArrayIndexOutOfBoundsException以及java.lang.IndexOutOfBoundsException.

有很多像这样的问题,所有这些都有模糊的没有代码答案,或者大多数都非常具体,并且局限于手头的问题,并没有解决在所有情况下完全相同的根本原因.


如果您看到属于此一般情况的一个,而不是使用更多重复的专门内容回答它,请将其标记为此副本的副本.

java arrays arraylist indexoutofboundsexception

-9
推荐指数
1
解决办法
4万
查看次数