java.util.linkedlist:
LinkedList是Collection类的具体子类。
LinkedList对象允许我们分组类似或者不相似的对象类型。
创建链接列表只不过是创建java.util.linkedlist类的对象。
数据以节点的形式组织在LinkedList中。
该节点包含两个部分,它们是数据部分,地址部分。
数据部分始终提供我们想要表示的实际数据。
地址部分表示下一个节点的地址。
对于LinkedList中的最后一个节点,地址部分必须为null,指示链接列表的结尾。
链接列表API:
Java链表示例
import java.util.*; class Linkedlist { public static void main(String[] args) { LinkedList ll = new LinkedList(); System.out.println("CONTENTS OF l1 = " + ll); System.out.println("SIZE = " + ll.size()); ll.add(new Integer(10)); ll.add(new Integer(20)); ll.add(new Integer(30)); ll.add(new Integer(40)); System.out.println("CONTENTS OF ll = " + ll); System.out.println("SIZE = " + ll.size()); //retrieving data of ll using toArray () Object obj[] = ll.toArray(); int s = 0; for (int i = 0; i < obj.length; i++) { Integer io = (Integer) obj[i]; int x = io.intValue(); s = s + x; } System.out.println("SUM USING toArray () = " + s); ll.addFirst(new Integer(5)); ll.addFirst(new Integer(6)); System.out.println("CONTENTS OF ll = " + ll); System.out.println("SIZE = " + ll.size()); //retrieving data of ll using iterator () Iterator itr = ll.iterator(); int s1 = 0; while (itr.hasNext()) { Object obj1 = itr.next(); Integer io1 = (Integer) obj1; int x1 = io1.intValue(); s1 = s1 + x1; } System.out.println("SUM USING iterator () = " + s1); //retrieving data of ll using ListIterator () ListIterator litr = ll.listIterator(); while (litr.hasNext()) { Object obj2 = litr.next(); System.out.print(obj2 + ","); } System.out.println("\n"); while (litr.hasPrevious()) { Object obj3 = litr.next(); System.out.print(obj3 + ","); } System.out.println("\n"); Object obj4 = ll.get(2);//random retrieval System.out.println(obj4); } };
实例方法:
Object getFirst (); - 1 Object getLast (); - 2 public void addFirst (Object obj); - 3 public void addLast (Object obj); - 4 public void removeFirst (); - 5 public void removeLast (); - 6
方法1和2分别用于获得LinkedList的第一和最后一个物体。
方法3和4用于分别向LinkedList对象添加类似或者不同的对象。
方法5和6分别用于分别从LinkedList中移除第一和最后一个对象。
链表的缺点:
- 为堆内存中节点的地址部分创建了添加内存空间。
- 检索时间更多。
- 由于我们正在浪费大部分内存空间进行寻址,所以性能将减少。
构造函数:
LinkedList (); LinkedList (int size);
日期:2020-04-11 23:04:27 来源:oir作者:oir