Java 将字符串拆分为“&引用;而不是空间

Java 将字符串拆分为“&引用;而不是空间,java,string,split,Java,String,Split,每次我尝试拆分字符串时,例如foo,bar,foo-bar,bar它都会跳过空格后的字符串 如何阻止Java这样做 String[] transactionItem = transactionItems[i].split(","); 如果transactioItems[0]=Y685,蓝色领带,2,34.79,2 它将输出 transactionItem[0] = Y685 transactionItem[1] = Blue transactionItem[3] = out of bounds

每次我尝试拆分字符串时,例如
foo,bar,foo-bar,bar
它都会跳过空格后的字符串

如何阻止Java这样做

String[] transactionItem = transactionItems[i].split(",");
如果
transactioItems[0]=Y685,蓝色领带,2,34.79,2

它将输出

transactionItem[0] = Y685
transactionItem[1] = Blue
transactionItem[3] = out of bounds

此代码工作正常:

String[] split = myString.split(",");
基本演示:

对于您的新示例,它也很有效:
我认为我们需要更多的代码来搜索问题。

这:

transactionItem[3]

应该是2而不是3。数组的索引为0。

请发布您正在使用的代码。您认为结果是什么?确定没有将数组的打印输出与每个元素中的值混淆?换句话说,transactionItems[i]实际上包含什么--“foo,bar,foo”或“foo,bar,foo-bar,bar”?我觉得这很难相信。你能解释一下“它跳过空格后的字符串”是什么意思吗?我的输出显示[foo,bar,foo-bar,bar]。根据您的文本示例,我仍然会生成大小为5的正确数组。但应定义第四个元素([3]):34。79@brainzzy根据他的例子,他的数组大小是5。第三个索引应该存在,并返回34.79