这很简单。 它是J2SE 5中引入的新功能。在类名后面指定尖括号意味着您正在创建一个可以保存任何类型数据的临时数据类型。

例:

class A{

T obj;

void add(T obj){

this.obj=obj;

}

T get(){

return obj;

}

}

public class generics {

static void print(E[] elements){

for(E element:elements){

System.out.println(element);

}

}

public static void main(String[] args) {

A obj=new A();

A obj1=new A();

obj.add("hello");

obj1.add(6);

System.out.println(obj.get());

System.out.println(obj1.get());

Integer[] arr={1,3,5,7};

print(arr);

}

}

而不是Integer,你可以实际写任何东西,它将以相同的方式工作。 尝试编写String代替Boolean。

这只是为了方便起见:

Integer被称为任何类型

Integer作为元素类型

Integer作为数字类型

Integer作为价值

Integer为关键

但你可以将它命名为任何你想要的东西,它并不重要。

此外,Integer,String,Boolean等是Java的包装类,它有助于在编译期间检查类型。 例如,在上面的代码中,obj的类型为String,因此您无法添加任何其他类型(尝试obj.add(1),它将转换错误)。 同样,obj1属于Integer类型,您无法添加任何其他类型(尝试obj1.add("hello"),将出现错误)。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐