我如何限制一些 Generic class 只接受 Integer ?甚至不接受 Double 而只接受 int 值
How do i restrict some Generic class to only accept Integer ? not even take Double but only int values
{
public static void main(String[] args)
{
G<Double> a=new G<Double>(10.9);
G<String> b=new G<String>("hello");
G c=new G("hell");
System.out.println(a.getObject()); // print 10.9
System.out.println(b.getObject()); // print hello
System.out.println(c.getObject()); // print hell
}
}
class G<Integer> {
Integer obj;
G(Integer obj)
{
this.obj=obj;
}
public Integer getObject()
{
return this.obj;
}
}
在上面的代码中,只有在 main 方法中接受 everytype 时,make G class as Integer type 的用途是什么?我如何实现 G class 只采用整数值,如果我输入双精度值但只采用整数,则不转换为双精度值。
像这样。如前所述,不要使用泛型。只需让您的构造函数只接受 Integer 类型即可。如果添加 setter,则仅接受整数类型。
class G {
Integer obj;
G(Integer obj)
{
this.obj=obj;
}
public Integer getObject()
{
return this.obj;
}
}
{
public static void main(String[] args)
{
G<Double> a=new G<Double>(10.9);
G<String> b=new G<String>("hello");
G c=new G("hell");
System.out.println(a.getObject()); // print 10.9
System.out.println(b.getObject()); // print hello
System.out.println(c.getObject()); // print hell
}
}
class G<Integer> {
Integer obj;
G(Integer obj)
{
this.obj=obj;
}
public Integer getObject()
{
return this.obj;
}
}
在上面的代码中,只有在 main 方法中接受 everytype 时,make G class as Integer type 的用途是什么?我如何实现 G class 只采用整数值,如果我输入双精度值但只采用整数,则不转换为双精度值。
像这样。如前所述,不要使用泛型。只需让您的构造函数只接受 Integer 类型即可。如果添加 setter,则仅接受整数类型。
class G {
Integer obj;
G(Integer obj)
{
this.obj=obj;
}
public Integer getObject()
{
return this.obj;
}
}