如何在<String>不使用 Jackson API 的情况下在 Java 中将字符串转换为列表



我需要在不使用Jackson API的情况下在Java中将String转换为List。我的字符串就像

String abc = "["A","B","C"]";

我希望它转换为列表。

我已经导入了net.sf.jsonorg.json.simple

我不能使用杰克逊 API,但有没有其他方法可以代替使用拆分?

既然你有org.json.simple,你可以使用 JSONParser 来解析 JSON

String abc = "["A","B","C"]";
JSONParser parser = new JSONParser();
Object obj = parser.parse(abc);

如果您只给出了 json 字符串格式["A","B","C"]那么您可以手动解析它:

public static List<String> parse(String str) {
    List<String> res = new ArrayList<>();
    int pos = str.indexOf('[') + 1;
    while ((pos = str.indexOf('"', pos)) >= 0) {
        int beginIndex = pos + 1;
        int endIndex = str.indexOf('"', beginIndex);
        res.add(str.substring(beginIndex, endIndex));
        pos = endIndex + 1;
    }
    return res;
}

相关内容

最新更新