在Java中将数组的字符串表示形式转换为数组

时间:2012-10-27 11:51:13

标签: java arrays string type-conversion

我有一个像Java这样的字符串:

String s = "{{\"2D\", \"array\"}, {\"represented\", \"in a string\"}}"

如何将其转换为实际数组?像这样:

String[][] a = {{"2D", "array"}, {"represented", "in a string"}}

(我正在寻找的解决方案有点像python的eval()

1 个答案:

答案 0 :(得分:3)

我强烈建议您使用支持json的库来解析String。但是,只是为了好玩,请查看下面的代码,只使用String方法完成所需的操作:

String s = "{{\"2D\", \"array\"}, {\"represented\", \"in a string\"}}";
s = s.replace("{", "");
String[] s0 = s.split("},\\s");
int length = s0.length;
String[][] a = new String[length][];
for (int i = 0; i < length; i++) {
    a[i] = s0[i].replace("}", "").split(",\\s");
}