Вы можете использовать dynamic
в .NET 4 или более поздней версии. Например, с помощью JSON.NET я могу сделать:
dynamic obj = JsonConvert.Deserialize<dynamic>("{x: 'hello'}");
Затем вы можете:
var str = obj.x;
Однако не знаете, как он будет обрабатывать цифровые клавиши. Вы можете, конечно, просто использовать JObject
непосредственно, например:
var obj = JObject.Parse("{'123456': 'help'}");
var str = obj["123456"];
Вы можете использовать следующее, чтобы проверить погоду: оно пустое и пустое.
public boolean isEmpty() {
Field fields[] = this.getClass().getDeclaredFields();
for (Field field : fields) {
try {
Object value = field.get(this);
if (value != null) {
return false;
}
}
catch (IllegalArgumentException e) {
e.printStackTrace();
}
catch (IllegalAccessException e) {
e.printStackTrace();
}
}
return true;
}
Вы можете использовать Field.get()
, чтобы получить значение поля и затем привести его к List
:
List<?> l = (List<?>) Field.get(obj);
if (l == null || l.isEmpty()) {
}
В интерфейсе List
есть метод под названием isEmpty()
. Вы можете использовать этот метод в вашем условии if, как показано ниже.
if (list==null||list.isEmpty) {
//TODO if the list is empty
}