我需要创建一个采用TreeSet或HashSet的外观。它的构造函数必须如下所示:
CollectionFacadeSet(java.util.Collection<java.lang.String> collection)我导入java集合并使用以下行:
Collections <String> collection = new Collections<>();但是,java不接受它,我得到了一个错误:
有什么解决办法吗?
谢谢!
发布于 2014-05-01 07:15:40
java.util.Collections (注意复数形式)是一个助手类,具有许多静态方法来操作Collections,java.util.Collection (单数)是所有JDK内置集合(Lists、Sets等)的基类。
博士-你输入错类了。
请注意,java.util.Collection是一个abstract类,您将无法实例化它。
发布于 2014-05-01 07:18:45
尽管变量可以是Collection,但它所引用的对象必须是具体类型;不能实例化Collection (或尝试执行的集合)。
试着做这样的事情:
Collection<String> c = new ArrayList<>();但如果你需要一套,就用一套:
Set<String> set = new HashSet<>();发布于 2017-06-20 11:52:26
首先,您使用的是java.util.Collections类,它不是泛型类,因此不能将其参数化为字符串type.you,而应该使用java.util.Collection。
其次,由于Collection是一个接口,所以必须使其实现类的对象。
你可以用-
Collection <String> collection = new ArrayList<String>();https://stackoverflow.com/questions/23403575
复制相似问题