gpt4 book ai didi

java - 初学者 Java Q on T 扩展了 Comparable T

转载 作者:行者123 更新时间:2023-12-02 10:14:54 24 4
gpt4 key购买 nike

我是学习java编码的初学者,正在实现红黑树数据结构。我为 Main 类中的节点创建了一个类,并使用 T extends Comparable T。

但是,以下行

RedBlackNode<T> nil =new RedBlackNode<T>(mainkey);

给出错误,因为它没有识别“T”数据类型的用法。我正在努力学习 Comparable 的用法,但无法解决这个问题。任何帮助将不胜感激

public class Main {

public void main(String[] args) {
System.out.println("Hello World! qNew");
int mainkey=10;
System.out.println(mainkey);
RedBlackNode<T> nil =new RedBlackNode<T>(mainkey);
//RedBlackNode<T> root=nil;
//System.out.println(nil.key);
}
public class RedBlackNode<T extends Comparable <T>>
{
public static final int BLACK = 0; //Enumerating Colors with numbers for
public static final int RED = 1; // Color of node
public T key;

RedBlackNode<T> parent; //Parent Node
RedBlackNode<T> left; //Left Child Node
RedBlackNode<T> right; //Right Child Node

public int numLeft=0; //No of elements to left of a node
public int numRight=0; //No of elements to right of a node

public int color; //Color of each node

//Default constructor to initialize

RedBlackNode()
{
color=BLACK;
numLeft=0;
numRight=0;
parent=null;
left=null;
right=null;
}

//Constructor to initialize key value of the node

RedBlackNode(T key)
{
this();
this.key=key;
}
}

}

最佳答案

T 代表你想要的任何东西。在编写类时,您使用 T 或 G 等大写字母,但是当您使用它时,它需要知道 T 是什么。

如果我有一个 Person 类作为节点中的数据,我会像这样使用它 RedBlackNode<Person> parent = new RedBlackNode<Person>();

关于java - 初学者 Java Q on T 扩展了 Comparable T,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54756914/

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