没有强制转换的原始代码:
ArrayList<String> elements = new ArrayList<String>();
for (ListTreeNode pos : positions)
elements.add(pos.getElement());
在 ListTreeNode 中:
public String getElement() {
return element;
}
如果我这样做,Eclipse 会告诉我这是从 String 到 String 的未经检查的转换:
elements.add((String)pos.getElement());
我将强制转换放在那里是因为在此之前它告诉我 ArrayList 中的方法 add(String) 不适用于类型 (String)。我不明白?
最佳答案
Eclipse 认为有两种不同的String 类型。例如,可以有一个 com.example.String
。如果两者都是 java.lang.String
并且 Eclipse 以某种方式做出区分,那就非常有趣了。
关于java - 未经检查的从 String 到 String 的转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3664003/