且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

在java中检索嵌套json中的所有键

更新时间:2023-02-14 12:20:17

您可以递归遍历JsonObject以获取所有键。
继承人伪代码

You can recursively traverse your JsonObject to get all keys. heres the pseudocode

findKeys(JsonObject obj,List keys){
List<String>keysFromObj=obj.keys();
keys.addAll(keysFromObj);
for(String key:keysFromObj){
    if(obj.get(key).getClass()==JSONObject.class){
         findKeys(obj.get(key),keys);
         }
    }
}

假设您的对象是{a:1,b:{c:你好,d:4.0}}
上面的函数应该给你[a,b,c, d]

So suppose if your object is {"a":1,"b":{"c":"hello","d":4.0}} the above function should give you ["a","b","c","d"]

但是如果你只想要[a,c,d]作为输出,你可以写 -

But if you want only ["a","c","d"] as your output,you can write-

findKeys(JsonObject obj,List keys){
List<String>keysFromObj=obj.keys();

for(String key:keysFromObj){
    if(obj.get(key).getClass()==JSONObject.class){
         findKeys(obj.get(key),keys);
         }else{
         keys.add(key);
         }
    }
}