środa, 26 września 2018

Java pętle


Java pętle

Jak wspomniano wcześniej teraz programujemy w stylu sekwencyjnym. Oznacza to wykonywanie kodu z góry do dołu każdej linii kodu, chyba że powiesz Javie aby postąpiła inaczej.
Widzieliśmy w poprzednik artykule, że jest sposób aby "poinformować" Jave aby nie wykonywała każdej linii kodu za pomocą instrukcji if.
Innym sposobem na przerwanie przepływu od góry do dołu są pętle. Pętla w programowaniu jest instrukcją, która zmusza program aby dany kod wykonywał określoną ilość razy.
Jako przykład, załóżmy, że chcesz dodać liczby od 1 do 10. Można to zrobić bardzo łatwo w Javie:
int dodaj = 1+2+3+4+5+6+7+8+9+10;
Ale trudno byłoby stosować tę metodę, aby dodać liczby od 1 do 1000. Zamiast tego, możesz użyć pętli aby przejść wielokrotnie przez linię kodu, dopóki nie osiągnie 1000. Wtedy można wyjść z pętli i kontynuować wykonywanie programu.

Java pętla for

Zaczniemy od pętli for, jednego z najbardziej popularnego typu pętli. O pętli for możemy powiedzieć "wykonuj określona ilość razy". Składnia pętli for jest przedstawiona poniżej:
for (wartość_początkowa; wartość_końcowa; wartość_przyrostu) {
     // kod do wykonania
}
Więc po słowie for (pisanym małymi literami) masz parę okrągłych nawiasów. Wewnątrz nawiasów są trzy warunki: wartość początkowa dla pętli, wartość końcowa przy której pętli kończy swoje działanie, i warunek zwiększający lub zmniejszający licznik pętli.  Wartość przyrostu lub zmniejszenia zazwyczaj wynosi 1 ale również możne to być dowolna wartość na przykład 5 jeśli chcesz.
Po nawiasach okrągłych musimy zastosować nawiasy klamrowe, w których umieszczamy kod do wykonania. Przykład wszystko nam wyjaśni:

package javapetle;

public class PetlaFor {    

    public static void main(String[] args) {        

        int wart_pocz;
        int wart_kon = 11;        

        for (wart_pocz = 0; wart_pocz < wart_kon; wart_pocz++ ) {
            System.out.println("Wartość pętli = " + wart_pocz);
        }
    }
}
 Zaczynamy od utworzenia zmiennej typu int, którą nazwalismy wart_pocz. W następnej linii zadeklarowaliśmy koleją zmienną typu liczba całkowita. Zmienna ta będzie przechowywać wartość, przy której pętla ma zakończyć swoje działanie i jest ustawiona na 11. Zamierzamy wyświetlić za pomocą pętli liczby od 0 do 10.
Wewnątrz nawiasów okrągłych pętli for mamy:
wart_pocz=0;wart_pocz < wart_kon;wart_pocz++
Pierwsza część mówi Javie od jakiej liczby chcesz uruchomić pętle. Tutaj mamy wartość 0. Będzie to pierwsza liczba w pętli. Druga część wykorzystuje warunek logiczny:
wart_pocz < wart_kon
To wyrażenie informuje Javę, "wart_pocz jest mniejsza niż wart_kon". Pętla będzie wykonywana w kółko dopóki wart_pocz będzie mniejsza od wart_kon.
Jako ostatnia instrukcja w nawiasach okrągłych jest wyrażenie:
wart_pocz++
Co to oznacza, wyrażenie to informuje Javę aby za każdym obiegiem pętli zwiększyła wartość zmiennej wart_pocz o jeden. Wyrażenie wart_pocz++ jest skrótem powiedzenia " dodaj 1 do wartości zmiennej".
W wersji pełnej powyższe wyrażenie zapisujemy w następujący sposób:
wart_pocz = wart_pocz + 1;
 Po prawej stronie znaku równości mamy wart_pocz + 1. Java będzie następnie dodawać 1 do tego, co obecnie jest przechowywane w zmiennej wart_pocz. Po dodaniu 1 do zmiennej jej wartość ulega zwiększeniu i wynik jest zapisywany do zmiennej po lewej stronie znaku równości. Takie działanie nazywa się inkrementacją zmiennej.  Jest to tak powszechne działanie, że powstała skrócona notacja wart_pocz++:
int liczba = 0;
liczba++;
Wartość zmiennej liczba wynosi 1 gdy powyższy kod zostanie wykonany. Jest to krótki sposób poniższego zapisu:
int liczba = 0;
liczba = liczba +1;
Podsumowując nasza pętla wygląda tak:
Wartość początkowa pętli: 0
Wykonywanie pętli: kiedy wartość początkowa jest mniejsza od 11
Jak przejść do wartości końcowej: dodając 1 do wartości początkowej
Wewnątrz nawiasów klamrowych pętli for mamy:
System.out.println("Wartość pętli = " + wart_pocz);
Cokolwiek jest obecne wewnątrz wart_pocz zostanie wyświetlone rzem z tekstem na ekranie.
Uruchom program i zobacz co powinno się wyświetlić w oknie output:
run:

Wartość pętli = 0

Wartość pętli = 1

Wartość pętli = 2

Wartość pętli = 3

Wartość pętli = 4

Wartość pętli = 5

Wartość pętli = 6

Wartość pętli = 7

Wartość pętli = 8

Wartość pętli = 9

Wartość pętli = 10

BUILD SUCCESSFUL (total time: 1 second)

Poniżej przykładowy kod, który dodaje liczby od 1 do 10. Wypróbuj:

package javapetle;

public class PetlaFor {    

    public static void main(String[] args) {        

        int wart_pocz;
        int wart_kon = 11;
        int dodaj = 0;        

        for (wart_pocz = 1; wart_pocz < wart_kon; wart_pocz++ ) {
            dodaj = dodaj + wart_pocz;
        }        

        System.out.println("Wynik dodawania = " + dodaj);
    }
}

 Wynik jaki powinien być wyświetlony w oknie Output to 55.
 W następnej części poznamy pętle while.

Brak komentarzy:

Prześlij komentarz