Java泛型扩展了Comparable<;E>;

Java泛型扩展了Comparable<;E>;,java,generics,Java,Generics,我正在尝试用Java实现ConcurrentSortedList,我有以下几点: public class ConcurrentLinkedList<E> extends AbstractCollection<E> 正确的语法是什么?我希望E是一个实现可比较接口的对象 我把密码改成了 public class ConcurrentLinkedList<E extends Comparable<E>> extends AbstractCollec

我正在尝试用Java实现ConcurrentSortedList,我有以下几点:

public class ConcurrentLinkedList<E> extends AbstractCollection<E>
正确的语法是什么?我希望E是一个实现可比较接口的对象


我把密码改成了

public class ConcurrentLinkedList<E extends Comparable<E>> extends AbstractCollection<E>
公共类ConcurrentLinkedList扩展了AbstractCollection

但是,下面的代码现在给出了一个错误:

public boolean add(E e) {
checkNullArg(e);
for (;;) {
  Node<E> n = header.forward();
  for (;;) {
    if (n == null)
      return false;
    **if (e.compareTo(n.element)) {**
public boolean add(E){
checkNullArg(e);
对于(;;){
Node n=header.forward();
对于(;;){
如果(n==null)
返回false;
**如果(例如,比较(n.元素)){**
我正在写一个排序列表,并试图在正确的位置插入元素

节点声明为:

class Node<E> extends AtomicReference<Node<E>> {
private volatile Node<E> prev;

final E element;
类节点扩展了原子引用{
私有易失性节点prev;
最终E元素;

当你第一次声明ie时,你只需要说
,之后它就可以运行了,但是,下面的语句现在给出了一个错误公共布尔add(E){if(E.compare(n.element)){找不到符号:方法compare(E)位置:e类型的变量e,其中e是一个类型变量:e扩展了类中声明的ConcurrentLinkedList@AmarMond你是说
e.compareTo
Comparable
定义了
compareTo
方法,而不是
compare
。元素
n.element
e
?如果不是,你就不能比较它们你在问题中添加了没有编译的代码?“下面的代码现在给出了一个错误”-这个错误是。。。?
public boolean add(E e) {
checkNullArg(e);
for (;;) {
  Node<E> n = header.forward();
  for (;;) {
    if (n == null)
      return false;
    **if (e.compareTo(n.element)) {**
class Node<E> extends AtomicReference<Node<E>> {
private volatile Node<E> prev;

final E element;