0
import java.util.ArrayList;

public class Tester {
   public static void main(String[] args ) {
      ArrayList<Comparable> Aria = new ArrayList<Comparable>();
      Aria.add(new Integer(1));
   }
}

大家好。这是我的全班测试员。我想将一个整数输入到 Comparable ArrayList 中。但是,我收到一条错误消息:method ArrayList.add(int, Comparable) is not applicable (actual and formal arguments differ in lengths of list) method ArrayList.add(Comparable) is not applicable (actual argument Integer cannot be converted to Comparable by method invocation conversion).

我的朋友在他的电脑上试过这个,它没有错误。感谢您的帮助!

4

2 回答 2

1

你为什么想要一个ArrayListof Comparable?你想要一个排序集 ( TreeSet<Integer>) 吗?否则它并没有真正的意义(在我看来,尽管可能存在有意义的情况)。毕竟,您不能以原生方式比较 anInteger和 aString例如(两者都是Comparable)。如果您想要ArrayList任何类型的对象,只需将其制作为ArrayList<Object>.

如果Comparable不是要求,只需定义:

ArrayList<Integer> Aria = new ArrayList<Integer>();
于 2012-12-27T11:50:20.487 回答
0

Comparable 是泛型类型,所以

ArrayList<Comparable<?>> Aria = new ArrayList<Comparable<?>>();
于 2012-12-27T12:03:10.167 回答