Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将包含项目的字符串转换为列表<;字符串>;_Java_Converter_Arrays - Fatal编程技术网

Java 将包含项目的字符串转换为列表<;字符串>;

Java 将包含项目的字符串转换为列表<;字符串>;,java,converter,arrays,Java,Converter,Arrays,我有一个像这样的字符串:[“a”、“b”、“c”、“d”]。请注意,这是一个字符串,而不是字符串数组。但是,我想将其转换为列表。我怎样才能以最简单的方式做到这一点?也许是这样 String s = "[\"a\",\"b\", \"c\", \"d\"]"; List<String> list = Arrays.asList(s.substring(1, s.length() - 1).replaceAll("[\" ]", "").split(",")); String s=“[

我有一个像这样的字符串:
[“a”、“b”、“c”、“d”]
。请注意,这是一个
字符串
,而不是字符串数组。但是,我想将其转换为
列表
。我怎样才能以最简单的方式做到这一点?

也许是这样

String s = "[\"a\",\"b\", \"c\", \"d\"]";
List<String> list = Arrays.asList(s.substring(1, s.length() - 1).replaceAll("[\" ]", "").split(","));
String s=“[\'a\'、\'b\'、\'c\'、\'d\'”;
List List=Arrays.asList(s.substring(1,s.length()-1).replaceAll(“[\”],”).split(“,”);
编辑

String s = "[\"a\",\"b\", \"c\", \"d\"]";
List<String> list = Arrays.asList(s.substring(1, s.length() - 1).split(","));
for (int i = 0; i < list.size(); i++) {
    String ss = list.get(i).trim();
    list.set(i, ss.substring(1, ss.length() - 1));
}
String s=“[\'a\'、\'b\'、\'c\'、\'d\'”;
List List=Arrays.asList(s.substring(1,s.length()-1).split(“,”);
对于(int i=0;i
编辑#2

String s = "[\"a\",\"b\",\"c\",\"d\"]";
List<String> list = Arrays.asList(s.substring(2, s.length() - 2).split("\",[ ]*\""));
String s=“[\'a\'、\'b\'、\'c\'、\'d\'”;
List List=Arrays.asList(s.substring(2,s.length()-2).split(“\”,[]*\”);

这是我的实现:

List<String> list = Arrays.asList(theString.split(""));
List<String> list = Arrays.asList(theString.replace("\"", "").replace("[", "").replace("]", "").split(","));
list.forEach(e-> e.trim());
List List=Arrays.asList(字符串.split(“”);
希望能有帮助,萨拉姆

编辑

对不起,我没有很好地理解这个问题 这是一个新的实现:

List<String> list = Arrays.asList(theString.split(""));
List<String> list = Arrays.asList(theString.replace("\"", "").replace("[", "").replace("]", "").split(","));
list.forEach(e-> e.trim());
List List=Arrays.asList(字符串.replace(“\”,”).replace(“[”,”).replace(“]”,”).split(“,”);
list.forEach(e->e.trim());

这不是最好的实现,但这正是我所得到的:p

正如在评论中指出的,这个字符串只是一个JSON数组-您应该使用JSON解析器,而不是尝试发明自己的解析器


(以及页面上的所有其他答案)提供了一些有关如何执行此操作的说明。

如果您能与他人分享您正在使用的解决方案,那就太好了。@moviaa如果它是一个字符串,而不是:“[a,b,c,d]”?尝试进行拆分和一些字符串操作。您希望在列表中看到什么?您正在解析的实际字符串是什么
[“a”、“b”、“c”、“d”]
是四个字符串,看起来像是JSON数组格式。请更具体地说明您的确切输入和所需输出。@moviaa如果它实际上是合法的JSON,为什么不使用JSON解析器呢?如果任何字符串中有逗号,这将出错。事实上,如果字符串中有空格,也会出错@感谢您的澄清!我修好了。