我想通过使用以下代码检查{you}视频搜索中作为Json响应返回的Video
对象中是否存在嵌套键: -
YouTube.Videos.List searchvideostats = youtube.videos().list("snippet,statistics");
searchvideostats.setKey(apiKey);
Video v = searchvideostats.execute().getItems().get(0);
System.out.println(v.toPrettyString());
我有这样的输出: -
{
"etag" : "\"m2yskBQFythfE4irbTIeOgYYfBU/-TONXAYMx_10Caihcoac4XCyb4I\"",
"id" : "4Aa9GwWaRv0",
"kind" : "youtube#video",
"snippet" : {
"categoryId" : "10",
...................
.........
我的目标是: - 如何检查此响应中是否存在 categoryId 键。如果v.getSnippet().getCategoryId()
它给出了 NullPointerException ,如果在Json中不存在categotyId,那么就会这样做。
尝试: -
if (v.containsKey("id")) {
System.out.println("contains");
} else {
System.out.println("doesnt contains");
}
按预期返回包含。
if (v.containsKey("categoryId")) {
System.out.println("contains");
} else {
System.out.println("doesnt contains");
}
这会返回不包含 ..这是不期望的。如何检查此嵌套密钥是否可用?
P.S。 - >我必须检查许多嵌套的这样的键。
感谢您的帮助。
答案 0 :(得分:0)
您不需要字符串操作。只需使用Youtube库。
this.selectAvailableDate = element(by.css('td[aria-disabled="false"]'));
会做的事情。
注意:也可能需要检查零长度categoryid。