import java.util.ArrayList;

public class TestArrayList {
  public static void main(String[] args) {
    // Tworzenie listy do przechowywania nazw miast
    ArrayList<String> cityList = new ArrayList<>();

    // Dodawanie miast do listy
    cityList.add("Londyn");
    // Zawartość listy cityList: [Londyn]
    cityList.add("Denver");
    // Zawartość listy cityList: [Londyn, Denver]
    cityList.add("Paryż");
    // Zawartość listy cityList: [Londyn, Denver, Paryż]
    cityList.add("Miami");
    // Zawartość listy cityList: [Londyn, Denver, Paryż, Miami]
    cityList.add("Seul");
    // Zawartość listy: [Londyn, Denver, Paryż, Miami, Seul]
    cityList.add("Tokio");
    // Zawartość listy: [Londyn, Denver, Paryż, Miami, Seul, Tokio]

    System.out.println("Długość listy: " + cityList.size()); 
    System.out.println("Czy na liście znajduje się Miami? " +
      cityList.contains("Miami")); 
    System.out.println("Miejsce miasta Denver na liście: "
      + cityList.indexOf("Denver")); 
    System.out.println("Czy lista jest pusta? " +
      cityList.isEmpty()); // Wyświetla false

    // Wstawianie nowego miasta za pomocą indeksu 2
    cityList.add(2, "Xian");
    // Zawartość listy: [Londyn, Denver, Xian, Paryż, Miami, Seul, Tokio]

    // Usuwanie miasta z listy
    cityList.remove("Miami");
    // Zawartość listy: [Londyn, Denver, Xian, Paryż, Seul, Tokio]

    // Usuwanie miasta o indeksie 1
    cityList.remove(1);
    // Zawartość listy: [Londyn, Xian, Paryż, Seul, Tokio]

    // Wyświetlanie zawartości listy
    System.out.println(cityList.toString());

    // Wyświetlanie zawartości listy w odwrotnej kolejności
    for (int i = cityList.size() - 1; i >= 0; i--)
      System.out.print(cityList.get(i) + " ");
    System.out.println();
    
    // Tworzenie listy do przechowywania dwóch kół
    ArrayList<Circle> list = new ArrayList<>();
    
    // Dodawanie dwóch kół
    list.add(new Circle(2));
    list.add(new Circle(3));
    
    // Wyświetlanie powierzchni pierwszego koła na liście
    System.out.println("Powierzchnia koła: " +
      list.get(0).getArea());
  }
}