【发布时间】:2017-08-09 14:25:43
【问题描述】:
我正在了解LinkedLists,我有点困惑为什么人们手动实现它们,如下面的链接所示:
http://www.newthinktank.com/2013/03/linked-list-in-java/
而不是使用内置方法,例如:
public static void main(String[] args) {
LinkedList<String> linkedList = new LinkedList<String>();
linkedList.add("Item 1");
linkedList.add("Item 2");
linkedList.add("Item 3");
linkedList.add("Item 4");
System.out.println(linkedList);
System.out.println("-----------------------");
System.out.println("Added New First Item:" );
linkedList.addFirst("First Item");
System.out.println(linkedList);
System.out.println("-----------------------");
System.out.println("Added New Last Item:");
linkedList.addLast("Last Item");
System.out.println(linkedList);
System.out.println("-----------------------");
String firstValue = linkedList.get(0);
System.out.println(firstValue);
}
我已经研究了很长时间,但我仍然无法理解它。有人可以向我解释一下我给你的链接中显示的示例与此处直接显示的示例之间的区别吗?
【问题讨论】:
-
学习我猜...自己编写这些函数可以帮助您了解链表的功能。而且我很确定内置方法也执行相同的功能。
-
通常人们只实现他们自己的链表,因为他们正在学习链表是如何工作的,并且他们得到了实现自己的作业。在一个真正的程序中,几乎没有充分的理由来实现你自己的而不是使用标准的
java.util.LinkedList。您只是在浪费时间自己编写它,而且您自己的版本不太可能比过去 20 年来已经使用和测试过数百万次的标准版本得到更好的测试。 -
该链接是指导性的 - 学生和从事软件开发工作的人可能会被要求在面试期间实施链接列表。在实际的专业环境中,您通常会使用在您的语言标准库中实现的数据结构。
-
谢谢你,这就是我需要知道的。
标签: java linked-list