如何将 ArrayList<Object> 转换为 Java 中的 ArrayList<Double>?

How to convert an ArrayList<Object> to an ArrayList<Double> in Java?

我正在尝试将仅包含双精度和整数等数字的对象列表转换为新的双精度列表。我该怎么做?

    List<Object> o = new ArrayList<>();

     example: o contains  o = {1,1.0,3,5.6,7.3};

    List<Double> list = new ArrayList<>();

我尝试使用 stream() 方法,但没有成功。

您不需要使用流 - 只需将其转换为原始 List,如下所示:

List<Object> o = new ArrayList<>();
List<Double> list = (List) o;

也许这对你有帮助:

list = o.stream().filter(t -> t instanceof Double).map(t -> (Double) t).collect(Collectors.toList());