我有一个Java字符串,如下:
String s = "{{\"2D\", \"array\"}, {\"represented\", \"in a string\"}}"
我该如何将它转换成实际的数组?就像这样:
String[][] a = {{"2D", "array"}, {"represented", "in a string"}}
我需要的是类似于Python中的
eval()
函数的解决方案。我有一个Java字符串,如下:
String s = "{{\"2D\", \"array\"}, {\"represented\", \"in a string\"}}"
String[][] a = {{"2D", "array"}, {"represented", "in a string"}}
eval()
函数的解决方案。我强烈建议您使用支持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");
}
{
或 }
。 - Marko Topolnik
String[]
并用String[][]
进行初始化。如果你事先不知道数组的维度,这就不是一个简单的问题。 - Marko TopolnikString[][]
的程序。然而,在完成示例程序后,我意识到当我使用真实数据时,它不会以那种格式呈现。与其重新构建整个程序,我想 Java 可能有一个类似于 Python 的eval()
的等价物。 - ACarter