我有问题从字符串(作为json)或Map转换get_all(array)中的值。
RqlCursor cursor = r.db("test").table("x").get_all(arraylist)
当我尝试获取
时for(RqlObject o : cursor) {
if (o instanceof java.util.List<?>) {
List<Object> list = o.getList();
}else if (o instanceof ListIterator<?>) {
List<Object> list = o.getList();
array.add(list);
}else {
java.util.Map<String, Object> map = o.getMap();
}
}
除Map
之外的其他任何实例都没有捕获上述条件并生成错误java.util.ArrayList cannot be cast to java.util.Map
如何在地图或列表映射数组中获取此Object,甚至以json格式化字符串。
答案 0 :(得分:1)
我从另一个来源获得了答案。首先,我们必须使用.as
方法检查类型。
这是完整的代码
for(RqlObject c : cursor) {
Object o = c.as();
if (o instanceof java.util.List<?>) {
List<Object> list = o.getList();
}else if (o instanceof ListIterator<?>) {
List<Object> list = o.getList();
}else {
java.util.Map<String, Object> map = o.getMap();
}
}