我已经尝试创建了ArrayList,例如,它将保留模板化类:
public static ArrayList<Variable<float>>
这是我的变量类的代码:
public class Variable <T> {
public T value;
public String txt;
}
结果失败了。我得到了Syntax error, insert "Dimensions" to complete ReferenceType
,那么如何修复它呢?我不想创建单独的类,例如VariableFloat、VariableString等等。
发布于 2016-03-09 18:55:53
之所以会发生这种情况,是因为您正在尝试这样做:
public static ArrayList<Variable<float>> lst = new ArrayList<>();
注意小写的float
,它是一个基本类型.在Java中,原语不允许用作类型参数。相反,您应该使用Float
包装类:
public static ArrayList<Variable<Float>> lst = new ArrayList<>();
您之所以得到“维度”信息是因为它认为您正在尝试这样做:
public static ArrayList<Variable<float[]>> lst = new ArrayList<>();
这是允许的。
发布于 2016-03-09 18:54:46
泛型不能使用原语,只能使用对象。使用包装类。
public static ArrayList<Variable<Float>> iVars;
https://stackoverflow.com/questions/35899923
复制相似问题