我有以下代码使用泛型导致未检查转换警告
String innerText = null;
innerText = this.getException(detail.getChildElements());
导致此警告
类型安全:类型Iterator的表达需要选中转换成符合 到迭代器
参考方法是
private String getException(Iterator<OMElementImpl> iterator) { ... }
另一种方法getChildElements()
位于我无法触及的JAR文件中。没有其他警告或错误。
从谷歌搜索,似乎想摆脱这种警告的通常的方法是
@SuppressWarnings("unchecked")
String innerText = this.getException(detail.getChildElements());
因为编译器不能保证提前安全,但我宁愿避免使用SuppressWarnings
如果可能......有更好的方法吗?
编辑:getChildElements()
是记录here
只是很高兴Java泛型允许你的代码编译。我个人会在那里留下警告 - 这是一个完全有效的警告。 – 2009-10-02 15:11:31