gpt4 book ai didi

java - 之间的区别

转载 作者:行者123 更新时间:2023-12-02 03:45:44 25 4
gpt4 key购买 nike

泛型 T 和 E 之间的主要区别是什么。我有一个返回 T 类型变量的方法,还有另一个创建 ArrayList 的方法。我的另一个问题是:将元素添加到 ArrayList 时将变量强制转换为 (E) 是否安全?

//返回一个Arraylist,其中包含按顺序遍历的树中的所有元素

    public ArrayList<E> getPreorderTraversal() 

}

这可以在 Node 类中找到

public T getData();

最佳答案

一般来说,T 和 E 之间没有区别 - 它们只是对类型参数使用不同的名称(E 或 T)。

最常用的类型参数名称是:

E - Element (used extensively by the Java Collections Framework)
K - Key
N - Number
T - Type
V - Value

嗯,不建议在不了解整个上下文的情况下将变量转换为 E。

我假设如果你编写 BST 代码,你的解决方案应该像

public E getData();

public ArrayList<T> getPreorderTraversal()

所以节点列表是类型T或E。它不能包含类型T的列表并返回E,反之亦然。

关于java - <T> 和 <E> 之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36323484/

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