JAVA:如何将数组格式的字符串转换为字符串数组

JAVA:如何将数组格式的字符串转换为字符串数组,java,arrays,collections,Java,Arrays,Collections,我有一个字符串对象,看起来像这样:[狗,猫,鸟,熊猫]。它是数组格式,但不是实际的数组对象。如何将其快速转换为外观完全相同的字符串数组对象 您可以尝试以下方法: String str = "[dog,cat,bird,panda]"; String[] arr = str.replaceAll("[\\[\\]]", "").split(","); 那应该可以了。去掉括号,然后用逗号分开。我想你的意思是length()-1@Andreas我正试图去掉最后一个括号,所以length()-2似乎是

我有一个字符串对象,看起来像这样:[狗,猫,鸟,熊猫]。它是数组格式,但不是实际的数组对象。如何将其快速转换为外观完全相同的字符串数组对象

您可以尝试以下方法:

String str = "[dog,cat,bird,panda]";
String[] arr = str.replaceAll("[\\[\\]]", "").split(",");

那应该可以了。

去掉括号,然后用逗号分开。我想你的意思是
length()-1
@Andreas我正试图去掉最后一个括号,所以length()-2似乎是对的。你的代码使
子数据
变成
“dog,cat,bird,pand”
,因为你也在截断最后一个
a
。是的,看起来你是对的。。。忘记endIndex是独占的。。。注意,这将适用于当前字符串,但如果任何子字符串(值)中有括号,则不起作用。
String data = "[dog,cat,bird,panda]";
String subdata = data.substring(1, data.length() - 1 );
String[] parts = subdata.split(",");