public class TestMyLinkedList {
  /** Metoda main */
  public static void main(String[] args) {
    // Tworzenie listy łańcuchów znaków
    MyLinkedList<String> list = new MyLinkedList<>();

    // Dodawanie elementów do listy
    list.add("Ameryka"); // Dodawanie do listy
    System.out.println("(1) " + list);

    list.add(0, "Kanada"); // Dodawanie na początku listy
    System.out.println("(2) " + list);

    list.add("Rosja"); // Dodawanie na końcu listy
    System.out.println("(3) " + list);

    list.addLast("Francja"); // Dodawanie na końcu listy
    System.out.println("(4) " + list);

    list.add(2, "Niemcy"); // Dodawanie do listy w miejscu indeksu 2
    System.out.println("(5) " + list);

    list.add(5, "Norwegia"); // Dodawanie w miejscu indeksu 5
    System.out.println("(6) " + list);

    list.add(0, "Polska"); // Działa tak jak list.addFirst("Polska")
    System.out.println("(7) " + list);

    // Usuwanie elementów z listy
    list.remove(0); // Tu oznacza to samo co list.remove("Polska")
    System.out.println("(8) " + list);

    list.remove(2); // Usuwa element o indeksie 2
    System.out.println("(9) " + list);

    list.remove(list.size() − 1); // Usuwanie ostatniego elementu
    System.out.print("(10) " + list + "\n(11) ");
    
    for (String s: list)
      System.out.print(s.toUpperCase() + " ");
    
    list.clear();
    System.out.println("\nPo opróżnieniu listy jej wielkość to "
      + list.size());
  }
}