LinkedList,队列与列表的区别
2022-09-01 02:03:31
创建这两个对象时有什么区别
Queue<String> test = new LinkedList<String>();
和
List<String> test2 = new LinkedList<String>();
和 之间的实际区别是什么?他们俩都是吗?是否存在性能差异或使用一种性能差异的原因?test
test2
LinkedList
创建这两个对象时有什么区别
Queue<String> test = new LinkedList<String>();
和
List<String> test2 = new LinkedList<String>();
和 之间的实际区别是什么?他们俩都是吗?是否存在性能差异或使用一种性能差异的原因?test
test2
LinkedList
您编写的两个语句分别构造一个对象来保存字符串列表,然后将其分配给变量。区别在于变量的类型。LinkedList<String>
通过将 分配给 类型的变量,您只能访问 接口中可用的方法,其中包括对元素排队和取消排队的支持。如果您需要编写一个使用队列进行各种操作的程序,并希望使用链表实现该队列,这将非常有用。LinkedList<String>
Queue<String>
LinkedList
Queue<String>
通过将 分配给 类型的变量,您只能访问 接口中可用的方法,这些方法是维护元素序列的正常操作。例如,如果您需要处理可在任何位置增长和收缩的元素列表,这将非常有用。LinkedList<String>
List<String>
LinkedList
List<String>
简而言之,这两行创建了相同的对象,但打算以不同的方式使用它们。一个说它需要一个由链表支持的队列,而另一个说它需要一个由链表支持的一般元素序列。
希望这有帮助!
在这两种情况下,您都是实例化 。LinkedList
区别在于用于引用这些实例的变量的类型。
test
是类型,并且是 类型 。根据变量的类型,您只能调用在该特定类型上指定的方法。我认为这对你的处境很重要。Queue
test2
List
在性能方面,它将是相同的,因为您在两种情况下使用的实际实现是相同的()。LinkedList