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
