gpt4 book ai didi

java - <> 在 Java 中做什么?

转载 作者:搜寻专家 更新时间:2023-11-01 01:13:46 25 4
gpt4 key购买 nike

我知道如果你想要一个列表(例如),你可以像这样创建它:

List<String>

如果你想创建一个通用类型的列表,你可以这样做:

MyList<T>

<> 做的唯一一件事是将对象与容器或列表耦合吗?它还有其他用途吗?它实际上做了什么?是否在阅读另一篇文章如何将静态方法放入泛型类型对类型安全来说是一件坏事,那么这段代码是不是很糟糕?

public class LinkList<T> {

private final T t;
private final LinkList<T> next;

public LinkList(T t, LinkList<T> next){
this.t = t;

this.next = next;
}
// Creates list from array of T
public static <T> LinkList<T> getList(T[] t){
if(t == null){
return null;
}
LinkList linkList = null;
for(int i = t.length-1; i >= 0; i--){
linkList = new LinkList(t[i], linkList);
}
return linkList;
}

public T element() {
return t;
}

public LinkList<T> getNext() {
return next;
}

最佳答案

<>帮助编译器验证类型安全。

编译器确保List<MyObj>持有 MyObj 类型的对象在编译时而不是运行时。

泛型主要是为了编译时的类型安全。由于类型删除,所有通用信息在编译后将被替换为具体类型。

关于java - <> 在 Java 中做什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11891567/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com