我需要将BsonDouble的ArrayList转换为double []。下面的代码引发异常:
'java.lang.ClassCastException:java.lang.Double无法转换为org.bson.BsonDouble'
List<BsonDouble> bsonDoubles =
(List<BsonDouble>) doc.get(entry.getKey());
double[] d =
bsonDoubles.stream().mapToDouble(BsonDouble::doubleValue).toArray();
其中doc是BSON文档对象,而entry.getKey()返回一个获取文档字段的字符串。 从例外看来,我似乎在施行错误的方向,但对我来说似乎是正确的。帮助表示赞赏。
我正在使用:
答案 0 :(得分:0)
关于返回的数据类型的错误假设。下面的代码可以正常执行:
List<Double> bsonDoubles = (List<Double>) doc.get(entry.getKey());
double[] d = bsonDoubles.stream().mapToDouble(Double::doubleValue).toArray();