"Linked" 是什么意思?
What does "Linked" mean?
Java 中的许多 类 以 "Linked" 标识符为前缀,即 LinkedList
、LinkedBlockingQueue
、LinkedHashmap
等。 "linked" 这个词是什么意思?
A Java LinkedList
,是一个使用 linked lists. In contrast, one could also implement them using for instance dynamic arrays 的 List
实现,这就是 ArrayList
所做的。
A LinkedBlockingQueue
遵循与 LinkedList
大致相同的想法。
一个LinkedHashMap
,是一个普通的hash table (which provides efficient random access), combined with a doubly-linked list(提供一致的迭代顺序)。
因此,Linked
前缀意味着链接结构(例如单链表或双向链表)是其底层实现的关键部分。
这里,术语"linked"表示集合中的每个成员都通过"link"知道集合中的下一个成员;因此,每个成员都可以存储在内存中的非顺序位置。
以上非常简单的贡献来自 Linked List 维基百科文章,在对原始问题的评论中提到。
java中有一些Collection以Link
开头。不管 Link
后面是什么,这些 collections -
中有一些常见的 属性
1.这些collections总是有序的
2. 可以在任意位置插入元素。例如,您可以在 LinkdeList
处插入项目。
3. 维护一个link 与next/previous 项目连接,其中每个项目称为节点。你可以考虑像这样的节点的简化版本 -
class Node{
int value;
Node next;
Node previous;
}
此处Node next
和Node previous
作为当前节点到next/previous节点的link。
Java 中的许多 类 以 "Linked" 标识符为前缀,即 LinkedList
、LinkedBlockingQueue
、LinkedHashmap
等。 "linked" 这个词是什么意思?
A Java LinkedList
,是一个使用 linked lists. In contrast, one could also implement them using for instance dynamic arrays 的 List
实现,这就是 ArrayList
所做的。
A LinkedBlockingQueue
遵循与 LinkedList
大致相同的想法。
一个LinkedHashMap
,是一个普通的hash table (which provides efficient random access), combined with a doubly-linked list(提供一致的迭代顺序)。
因此,Linked
前缀意味着链接结构(例如单链表或双向链表)是其底层实现的关键部分。
这里,术语"linked"表示集合中的每个成员都通过"link"知道集合中的下一个成员;因此,每个成员都可以存储在内存中的非顺序位置。
以上非常简单的贡献来自 Linked List 维基百科文章,在对原始问题的评论中提到。
java中有一些Collection以Link
开头。不管 Link
后面是什么,这些 collections -
1.这些collections总是有序的
2. 可以在任意位置插入元素。例如,您可以在 LinkdeList
处插入项目。
3. 维护一个link 与next/previous 项目连接,其中每个项目称为节点。你可以考虑像这样的节点的简化版本 -
class Node{
int value;
Node next;
Node previous;
}
此处Node next
和Node previous
作为当前节点到next/previous节点的link。