我有一个代码,我想逐行了解代码是什么,因为我是Java新手,并且想了解该程序。
我的代码如下:
public class json {
public static void main(String[] args) throws Exception {
try {
JsonReader jsonReader = new JsonReader(new FileReader("file"));
Gson gson = new Gson();
JsonElement json = gson.fromJson(jsonReader, JsonElement.class);
//JsonElement json = new JsonParser().parse(jsonString);
JsonArray array = json.getAsJsonObject().get("rows").getAsJsonArray();
int length = array.size();
for (int i = 0; i < length; i++) {
System.out.println(array.get(i).getAsJsonObject().get("automatic").getAsJsonObject().get("kernel").getAsJsonObject().get("release").getAsString());
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
当我运行它时,我得到:
3.16.0-5-amd64
3.16.0-5-amd64
3.16.0-5-amd64
该程序可以满足我的需求,但是有1或2行不完全理解100%。
所以JsonReader jsonReader = new JsonReader(new FileReader("file"));
读取json文件
这将创建一个Gson对象Gson gson = new Gson();
我在这里创建一个元素“ json”,将所有json文件中的内容保存在里面吗? JsonElement json = gson.fromJson(jsonReader, JsonElement.class);
这行创建一个数组,是我在“ json”内容中搜索“行”吗? JsonArray array = json.getAsJsonObject().get("rows").getAsJsonArray();
所以int length = array.size();
创建了一个称为“ lenght”的整数。但是array.size();
到底能做什么?
我想我知道这个循环。它只是遍历对象并搜索所需关键字的内容,然后将其打印出来。
答案 0 :(得分:0)
看看以下代码中的注释:
D= nx.dominating_set(G, x) # the node source here is optional
print(D)