如何将包含数组格式的字符串转换为java数组或列表?

如何将包含数组格式的字符串转换为java数组或列表?,java,Java,我有这样一个字符串: String res = '["A","B","0","1"]'; String[] r = {"A","B","0","1"}; 如何在Java中将其转换为数组或列表,使其变成如下: String res = '["A","B","0","1"]'; String[] r = {"A","B","0","1"}; 由于您的字符串是正确的Json字符串,因此可以使用库: String res=“[A,B,0,1]”; res=res.replace(“[”,”);

我有这样一个字符串:

String res = '["A","B","0","1"]';
String[] r = {"A","B","0","1"};
如何在Java中将其转换为数组或列表,使其变成如下:

String res = '["A","B","0","1"]';
String[] r = {"A","B","0","1"};

由于您的字符串是正确的Json字符串,因此可以使用库:

String res=“[A,B,0,1]”;
res=res.replace(“[”,”);
res=res.replace(“]”,“”);
res=res.replaceAll(“,”,“);
String[]arrayOutput=新字符串[res.length()];
char[]ar=res.toCharArray();
for(int i=0;i
无需使用
Gson
,您可以通过以下方法获得所需的结果-

String inputStr = "[\"A\",\"B\",\"0\",\"1\"]";
        String[] strArray = inputStr.split("[^\\w\\d]");
        List<String> list = new ArrayList<>();
        for (String str : strArray) {
            if (str != null && !str.isEmpty()) {
                list.add(str);
            }
        }
System.out.println(list);
String inputStr=“[\'A\'、\'B\'、\'0\'、\'1\'”;
字符串[]strArray=inputStr.split(“[^\\w\\d]”);
列表=新的ArrayList();
用于(字符串str:strArray){
if(str!=null&!str.isEmpty()){
添加(str);
}
}
系统输出打印项次(列表);
输出将为:[A、B、0、1]


实际上是字符串的一部分?删除第一个和最后一个字符,在逗号上拆分,删除每个元素周围的引号。”。字符串的javadoc是您的朋友:它有子字符串和split。这不是java字符串。请提供一个编译示例。@YassinHajaj,最初我是以xml格式从请求接收数据的,如下所示:通过解析它,我得到了该格式的字符串。我想把它转换成Java数组。@Aominèno,我只想得到值A,B,0,1,因为Stingsit给我的包com.google.gson不存在。我在Ubuntu上使用Geany。默认情况下,我现在没有这个包。@YounessNachid Idrissi如果您使用的是maven(或类似的生成工具),只需将依赖项添加到pom.xml中即可。否则,您必须下载jar并手动将其添加到您的类路径中。@YounessNachid Idrissi您可以从这里获得它,它仅适用于您编写的输入,我的输入来自这样的请求服务器[“a”、“B”、“0”、“1”];这正是我想要的,不需要搜索Gson以及如何在我的环境中启用它来完成这项任务。它看起来非常脆弱:您假设列表中只包含由字母或数字(或下划线)组成的元素。请注意,
\d
包含在
\w
中,您可以只使用
inputStr.split(“\\w”)