Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/338.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 整数哈希集 公共类MyClass扩展了另一个类{ 公共MyClass(哈希集ar){ 超级(ar); } }_Java_Generics_Inheritance_Abstract Class_Hashset - Fatal编程技术网

Java 整数哈希集 公共类MyClass扩展了另一个类{ 公共MyClass(哈希集ar){ 超级(ar); } }

Java 整数哈希集 公共类MyClass扩展了另一个类{ 公共MyClass(哈希集ar){ 超级(ar); } },java,generics,inheritance,abstract-class,hashset,Java,Generics,Inheritance,Abstract Class,Hashset,AnotherOne是一个抽象(泛型)类,它有一个构造函数,该构造函数将HashSet作为参数。然后还有另一种方法,它使用T类型作为参数 一切正常,但我必须使用Integer作为参数来覆盖该方法,并且使用Integer而不是int似乎很奇怪。有办法使用基元int吗?没有,不能对哈希集使用基元int 这也适用于所有其他泛型集合类。否,不能对哈希集使用基元int 这也适用于所有其他泛型集合类。否,泛型不能将基元类型作为泛型类型参数;它必须是引用类型,例如Integer 此外,您正在声明一个泛型类型参

AnotherOne
是一个抽象(泛型)类,它有一个构造函数,该构造函数将
HashSet
作为参数。然后还有另一种方法,它使用
T
类型作为参数


一切正常,但我必须使用
Integer
作为参数来覆盖该方法,并且使用
Integer
而不是
int
似乎很奇怪。有办法使用基元int吗?

没有,不能对哈希集使用基元int


这也适用于所有其他泛型集合类。

否,不能对哈希集使用基元int


这也适用于所有其他泛型集合类。

否,泛型不能将基元类型作为泛型类型参数;它必须是引用类型,例如
Integer

此外,您正在声明一个泛型类型参数
Integer
,该参数现在隐藏了实际的
java.lang.Integer
类。如果
MyClass
本身不是泛型的,则将其从类中删除:

public class MyClass<Integer> extends AnotherOne<Integer> {
    public MyClass(HashSet<Integer> ar) {    
        super(ar);
    } 
}
公共类MyClass扩展了另一个类
如果是,请使用单个大写字母作为泛型类型参数:

public class MyClass extends AnotherOne<Integer>
公共类MyClass扩展了另一个类

否,泛型不能将基元类型作为泛型类型参数;它必须是引用类型,例如
Integer

此外,您正在声明一个泛型类型参数
Integer
,该参数现在隐藏了实际的
java.lang.Integer
类。如果
MyClass
本身不是泛型的,则将其从类中删除:

public class MyClass<Integer> extends AnotherOne<Integer> {
    public MyClass(HashSet<Integer> ar) {    
        super(ar);
    } 
}
公共类MyClass扩展了另一个类
如果是,请使用单个大写字母作为泛型类型参数:

public class MyClass extends AnotherOne<Integer>
公共类MyClass扩展了另一个类

可以,但使用整数安全吗?有一个获取参数的方法public void method(整数i,整数k)看起来很奇怪,因为它是安全的。在我看来这并不奇怪。或者,您可以将int传递给方法,但可以转换为Integer并将Integer添加到集合中。取决于您的具体用例和首选项。好的,但使用Integer安全吗?有一个获取参数的方法public void method(整数i,整数k)看起来很奇怪,因为它是安全的。在我看来这并不奇怪。或者,您可以将int传递给方法,但可以转换为Integer并将Integer添加到集合中。取决于您的具体用例和偏好。是否有任何问题?@Leo如果值得一提,请将其放入答案中?是否有任何问题?@Leo如果值得一提,请将其放入答案中?