Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/358.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java:创建文件中其他地方可识别的类_Java_Class_Collections_Compiler Errors - Fatal编程技术网

Java:创建文件中其他地方可识别的类

Java:创建文件中其他地方可识别的类,java,class,collections,compiler-errors,Java,Class,Collections,Compiler Errors,在ClassA.java中,我有 class User { private int id; private String nick; public int getId() { return id; } public void setId(int i) { id = i; } public String getNick() { return nick; } public void

在ClassA.java中,我有

class User {
    private int id;
    private String nick;
    public int getId() {
        return id;
    }
    public void setId(int i) {
        id = i;
    }
    public String getNick() {
        return nick;
    }
    public void setNick(String n) {
        nick = n;
    }
}

public final class ClassA {
    private List<User> = new LinkedList();
    public Collection<String> getUsers() {
        LinkedList out = new LinkedList();
        Iterator loop = out.iterator();
        while (loop.hasNext()) {
            User u = loop.next();
            out.add(u.getNick());
        }
        return out;
    }
}
它告诉我,
u
不能强制转换为
用户
。我还需要做些什么来向编译器指出
u
的静态类型吗?

LinkedList
(或者通常是
List
)是泛型类型。如果不指定泛型参数,默认情况下它将被解释为
对象
。您需要相应地指定您的列表:

List<User> out = new LinkedList<>();
List out=new LinkedList();
LinkedList
(或通常的
列表
)是泛型类型。如果不指定泛型参数,默认情况下它将被解释为
对象
。您需要相应地指定您的列表:

List<User> out = new LinkedList<>();
List out=new LinkedList();

我认为您应该向类User添加一个构造函数

User(){}
这里呢

private List<User> test = new LinkedList();
private List test=new LinkedList();

名称

我认为您应该向类User添加一个构造函数

User(){}
这里呢

private List<User> test = new LinkedList();
private List test=new LinkedList();

名称

您需要使用泛型:

List<User> out = new LinkedList<>();
Iterator<User> loop = out.iterator();
List out=new LinkedList();
迭代器循环=out.Iterator();

您需要使用泛型:

List<User> out = new LinkedList<>();
Iterator<User> loop = out.iterator();
List out=new LinkedList();
迭代器循环=out.Iterator();
private List=new LinkedList()不编译。对于
out
loop
private List=new LinkedList(),您使用的是原始值而不是泛型不编译。对于
输出
循环
,您使用的是原始值而不是泛型。