如何将包含数组格式的字符串转换为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”)
。