java - 如何修复不兼容的类型:java.lang.Object 无法转换为 java.util.List
问题描述
我有一个这样定义的哈希图,我无法更改
private Map<String, Object> attributes;
该对象是一个字符串列表(有时大小 == 1,其他时间 > 1)。
我稍后在执行中有一个属性映射的实例。我想将对象作为列表。
这个:
List<String> outputs = attributes.get("keys");
抛出此错误。
incompatible types: java.lang.Object cannot be converted to java.util.List<java.lang.String>
我该如何解决?
解决方案
使用显式强制转换:
List<String> outputs = (List<String>) attributes.get("keys");
请注意,这是未经检查的强制转换,可能会在运行时抛出ClassCastException
。
推荐阅读
- javascript - 如何在 Angular RxJs 中处理来自多个数据流的相同值
- python - ValueError:字段 'id' 需要一个数字,但得到了 'example@example.com'
- php - 我想通过 rawurlencode 发送多行 otp 短信,但它不工作
- python - 如何使用这种格式解析和计算日期戳中经过的秒数?
- c# - C#如何在另一个窗口中获取一个窗口的加载状态?
- c++ - 您在 C 和 C++ 中如何称呼“#”?
- java - 为什么 java 类文件的路径在 Windows 10 上以斜杠 (/) 开头?
- eclipse - Gradle - 不要创建子项目
- c# - 如何在数组或列表中获取由 IEnumerable 生成的集合的值?
- javascript - Webpack 只编译自调用函数,不编译任何其他函数