好吧,我也面临类似的错误类型不匹配:无法转换为Set< Object>设置< String>最近.以下是代码段 – :
public static void main(String[] args) {
String[] arr = new String[]{"i", "came", "i", "saw", "i", "left"};
Set set = Arrays.asList(arr).stream().collect(Collectors.toSet());
System.out.println(set.size() + " distinct words: " + set);
}
这是屏幕截图供参考 – :
现在让我解释一下为什么我会收到此错误?在我的情况下,代码显示编译时错误,因为项目属性中的编译器版本不匹配.我选择了1.7,但它应该是1.8,因为1.8中添加了此功能.
所以请记下以下几点:
>在Java Build Path中选择了适当的JDK.例如在这种情况下JDK 1.8.
>必须在项目属性中的Java Compiler下(如上面的屏幕截图所示)选择适当的编译器版本.例如1.8
我希望这会对你有所帮助.