java - 如何将通用对象转换为列表JDK 11 上没有未经检查的强制转换警告
问题描述
假设我在一个方法上有一个 Object 参数,我想使用 lambda 将它投射到 List 上。
这是我的代码,我使用的是 JDK 11:
Optional.ofNullable(myobject).map(o -> (List<MyEntity>)o).ifPresent(o -> {
// should be ok, however, I get an unchecked cast warning because of (List<String>)o
});
实际上我也可以执行以下操作,但我对 MyEntity 的引用松散了:
Optional.ofNullable(myobject).map(List.class::cast).ifPresent(o -> {
// Simply converted to a generic List
});
有什么提示吗?
解决方案
推荐阅读
- javascript - this.shadowRoot.getElementById(...).textContent 不是函数
- c# - 用两个双变量计算
- python-3.x - 如何遍历具有以下结构的嵌套python字典?
- c++ - 使用 Mac os 从 TPC-E 生成数据
- android-studio - WebStorm 2020.2.2 无法使用 Zsh
- python - 使用函数特定参数对 Python 代码进行模块化
- visual-studio-code - 中文字符出现在 vscode 上下文菜单中。我该如何摆脱它们?
- java - 从客户端发送到服务器时的文件压缩最佳实践
- woocommerce - 合并 WooCommerce 选项卡:订单和订阅
- scala - 关于类型细化语法的困惑