Wstęp
Pobraliśmy dane z bazy danych i mamy w nich dwadzieścia obiektów tego samego typu. Pytanie brzmi jak wyświetlić te dwadzieścia wierszy i zaprezentować dane w konsoli. Odpowiedz jest prosta należy wykorzystać Java pętle
Obecnie mamy do dyspozycji trzy sposoby na operowanie na danych które mamy zgromadzone w liście, mapie lub zbiorze.
Java pętla – for
Zacznijmy od pętli for. Jest to najstarszy sposób wykonywania operacji z góry określoną ilość razy. Do takich operacji kiedyś należało obsługa kolekcji. Teraz wykorzystujemy do wykonania pewną z góry zakładaną ilość operacji, ale nie są to kolekcje. To kolekcji są lepsze rozwiązania.
for (int i =0; i<list.size(); i++) { System.out.println(list.get(i)); }
Zobacz, jak to działa. Najpierw omówmy parametry niezbędne do prawidłowego działania pętli.
for (int i =0; i<list.size(); i++) {
Kolejne zapisy są rozdzielone średnikami. Pierwszy to int i=0, który określa wartość początkową. Czyli tworzymy zmienną i nadajemy jej wartość zero. Są jednak sytuacje, kiedy wartość jest ustawiona inaczej. Możemy na przykład chcieć dodać coś takiego int i=list.size()-1, w takiej sytuacji przypisujemy do zmiennej ilość elementów w tabeli i odejmujemy jeden.
Kolejny zapis i<list.size() określa wartość końcową, po osiągnięciu której pętla przestaje działać. Tutaj również jak przy pierwszym elemencie jest możliwość dodania różnych zapisów na przykład i > 0.
W ostatnim zapisie określamy, jaka wartość ma być dodawana do zmiennej i. W tym przypadku wartość jest dodawana o jeden, ale możemy chcieć dodawać lub odejmować inną wartość.
Jednak podając nieprawidłowe parametry, możemy sprawić, że pętla nie wykona się ani razu, albo wykonywać się będzie bez końca. Przykładem nieskończonej pętli, jest taki zapis:
for (int i =0; i=5; i+3)
Dlaczego jest to pętla nieskończona, sprawdźmy to. Po pierwszym przejściu wartość zmiennej i równa się zero. Po drugim przejściu równa się trzy a po trzecim już sześć. Jak widać, nigdy nie będzie pięć. Dlatego jest to tak niebezpieczna dla nas sytuacja.
Java pętla – foreach
Od Java w wersji 5 dostaliśmy do dyspozycji kolejną możliwość przeglądania (iteracji) po elementach na listach lub zbiorach. Pętla foreach od razu mamy dostęp do obiektu elementu przechowywanego w tabeli. To duże ułatwienie.
for (String text: list2) { System.out.println(text); }
Jak widać używanie tej pętli, jest bardzo proste. Według mnie jest dużo bardziej czytelne niż wcześniejszej.
Java pętla – lambda
Od Java w wersji 8 możemy korzystać z kolejnego rozwiązania, które pozwala iterować po elementach na listach i zbiorach. Dodatkowo skrócił się zapis do jednej linijki. Można również jak w wersji foreach korzystać z bloku do tworzenia wielu operacji.
Pierwsza wersja pętli lambda wygląda następująco:
list2.forEach(text -> System.out.println(text));
Jak widzimy, zapis jest jeszcze prostszy niż poprzednio. Jest również wersja z blokiem kodu, w którym możemy użyć więcej niż jedno polecenie.
list2.forEach(text -> { System.out.println(text); }
Jak widać, Java pętla są stosunkowo prostym elementem języka. Jednocześnie bardzo ważnym i najczęściej wykorzystywanym w kodzie elementem języka.
Przeczytaj pozostałe artykuły z serii Java