我有一个单一链表的实现,可以与int
一起使用。我想在没有继承的情况下制作泛型。我的测试数据是电子信号,我需要测量填充它的执行时间。我不需要添加任何新方法,一切都很好,只需要将其作为模板/泛型。我怎样才能做到这一点?感谢。
这是我的代码......
public class LinkedList
{
//structure
private Node head;
private int count;
public LinkedList()
{
//constructor
}
public bool IsEmpty
{
//check if list is empty or not
}
public int Count
{
//count items in the list
}
public object Add(int index, object o)
{
//add items to the list from beginning/end
}
public object Delete(int index)
{
//delete items of the list from beginning/end
}
public void Clear()
{
//clear the list
}
}
答案 0 :(得分:2)
你的LinkedList应该是这样的
public class LinkedList<T>
{
public class Node<T>
{
public T data;
public Node<T> next;
}
//structure
private Node<T> head;
private int count;
public LinkedList()
{
//constructor
}
public bool IsEmpty
{
//check if list is empty or not
}
public int Count
{
//count items in the list
}
public T Add(int index, T o)
{
//add items to the list from beginning/end
}
public T Delete(int index)
{
//delete items to the list from beginning/end
}
public void Clear()
{
//clear the list
}
}
答案 1 :(得分:1)
int
更改为T
。 (不要盲目地改变所有 int
- 只是你用来保存元素的那些。所以不要改变count
或例如index
!)public class LinkedList<T>
我不确定您的object
参数。也许他们也应该改为T
。
您没有显示Node
实施,但我猜测您必须为此做类似的事情:将其设为Node<T>
等。
答案 2 :(得分:1)
将类声明为LinkedList<T>
,其中T
是泛型类型,然后修改Add
方法以接受T
类型的对象:public object Add(int index, T element)