47 lines
1.6 KiB
Java
47 lines
1.6 KiB
Java
// containers/LinkedListFeatures.java
|
|
import typeinfo.pets.*;
|
|
import java.util.*;
|
|
|
|
public class LinkedListFeatures {
|
|
public static void main(String[] args) {
|
|
LinkedList<Pet> pets =
|
|
new LinkedList<>(Pets.arrayList(5));
|
|
System.out.println(pets);
|
|
// Identical:
|
|
System.out.println("pets.getFirst(): " + pets.getFirst());
|
|
System.out.println("pets.element(): " + pets.element());
|
|
// Only differs in empty-list behavior:
|
|
System.out.println("pets.peek(): " + pets.peek());
|
|
// Identical; remove and return the first element:
|
|
System.out.println("pets.remove(): " + pets.remove());
|
|
System.out.println("pets.removeFirst(): " + pets.removeFirst());
|
|
// Only differs in empty-list behavior:
|
|
System.out.println("pets.poll(): " + pets.poll());
|
|
System.out.println(pets);
|
|
pets.addFirst(new Rat());
|
|
System.out.println("After addFirst(): " + pets);
|
|
pets.offer(Pets.randomPet());
|
|
System.out.println("After offer(): " + pets);
|
|
pets.add(Pets.randomPet());
|
|
System.out.println("After add(): " + pets);
|
|
pets.addLast(new Hamster());
|
|
System.out.println("After addLast(): " + pets);
|
|
System.out.println("pets.removeLast(): " + pets.removeLast());
|
|
}
|
|
}
|
|
/* Output:
|
|
[Rat, Manx, Cymric, Mutt, Pug]
|
|
pets.getFirst(): Rat
|
|
pets.element(): Rat
|
|
pets.peek(): Rat
|
|
pets.remove(): Rat
|
|
pets.removeFirst(): Manx
|
|
pets.poll(): Cymric
|
|
[Mutt, Pug]
|
|
After addFirst(): [Rat, Mutt, Pug]
|
|
After offer(): [Rat, Mutt, Pug, Cymric]
|
|
After add(): [Rat, Mutt, Pug, Cymric, Pug]
|
|
After addLast(): [Rat, Mutt, Pug, Cymric, Pug, Hamster]
|
|
pets.removeLast(): Hamster
|
|
*/
|