java泛型通配符编译错误(泛型的泛型)

java泛型通配符编译错误(泛型的泛型),java,generics,Java,Generics,您好,我在编译这段代码时遇到了问题。如何执行安全添加到数据变量 import java.util.*; public class Foo { private TreeSet<? extends Collection<String>> data; public Foo() { data = new TreeSet<ArrayList<String>>(); data.add("Goofy

您好,我在编译这段代码时遇到了问题。如何执行安全添加到数据变量

import java.util.*;

public class Foo
{
    private TreeSet<? extends Collection<String>> data;

    public Foo()
    {
        data = new TreeSet<ArrayList<String>>();  
        data.add("Goofy"); //this action generates a compile error
    }
}
import java.util.*;
公开课Foo
{

private TreeSet您正在尝试将
字符串添加到
字符串的
数组列表的
TreeSet
中。您可能需要添加
数组列表

ArrayList<String> list = new ArrayList<>();
list.add("Goofy");
data.add(list);
ArrayList list=new ArrayList();
添加(“高飞”);
数据。添加(列表);

也就是说,假设您没有使用过度复杂的设计,您很可能是这样的。

数据是ArrayList的集合,您正在尝试添加字符串

首先需要将字符串添加到数组列表中

ArrayList<String> list = new ArrayList<String>();
list.add("Goofy");
data.add(list);
ArrayList list=new ArrayList();
添加(“高飞”);
数据。添加(列表);
或者将数据更改为字符串树集

private TreeSet<String> data;
data = new TreeSet<String>(); 
data.add("Goofy");
私有树集数据;
数据=新树集();
数据。添加(“高飞”);

@pXL是的!我已经等了一个愚蠢的Java问题20分钟了。你得到的编译错误是什么?你搜索了错误消息了吗?你发现了什么?为什么它对你没有帮助?你需要在这里发布之前完成所有这些。除非碰巧有一个用户距离达到10k代表或其他身份只有一票之遥。