Inne działy

Java przykładowe programy

 

 

Java instrukcja if...else

 Zamiast używać dwóch instrukcji if, można użyć warunku if...else. Oto składnia instrukcji if...else:

if (warunek) {

     //kod do wykonania

} else {

     //kod do wykonania

}

Pierwsza linia zaczyna się słowem if następnie sprawdzamy warunek zawarty w okrągłych nawiasach. Następnie mamy nawiasy klamrowe, które zawierają instrukcje do wykonania gdy warunek zostanie spełniony. W dalszej części mamy słowo kluczowe else i nawiasy klamrowe, w których jest zawarty kod do wykonania gdy warunek nie jest spełniony. Poniżej nasz kod, który sprawdza wiek użytkownika:

package waruneklogiczny;


public class WyrazenieIF {


public static void main(String[] args) {

int uzytkownik = 17;

if (uzytkownik < 18){
System.out.println("Użytkownik ma mniej niż 18 lat");
} else {
System.out.println("Użytkownik ma więcej niz 18 lat");
}


}
}

 Jak widzimy mamy tu tylko dwa wybory: albo użytkownik ma mniej niż 18 lat lub użytkownik ma więcej niż 18 lat. Dostosuj swój kod do powyższego i wypróbuj go. Należy zauważyć że zostanie spełniony pierwszy warunek. Teraz zmień wartość zmiennej uzytkownik na 20 i uruchom program ponownie. Zostanie wyświetlony drugi warunek co możesz zobaczyć w oknie Output.

if...else if

Możesz przetestować więcej niż dwa warunki. Na przykład, co jeśli chcielibyśmy przetestować, więc przedziałów wiekowych, powiedzmy od 20 do 40 i ponad 40. Możemy to wykonać za pomocą instrukcji if...else if. Składnia instrukcji if...else if jest następująca:

if (warunek pierwszy) {

     //kod do wykonania

} else if ( warunek drugi ) {

     //kod do wykonania

} else {

     //kod do wykonania

}

Nowością tutaj jest:

else if (warunek drugi) {

}

Więc jeśli testujemy pierwszy warunek (18 lub więcej). Następnie występuje warunek else if i warunek w nawiasach okrągłych. Jeśli oba warunki nie zostaną spełnione to zostanie wykonany kod po słowie kluczowym else. Każdy warunek ma własną parę nawiasów klamrowych. Jeśli zapomnisz wpisać jeden z nawiasów klamrowych, dostaniesz komunikat o błędzie.

Zanim wypróbujemy nowy kod, musisz się nauczyć operatorów warunkowych. Te, które zostały użytej do tej pory to:

> większe niż

< mniejsze niż

>= większe lub równe

<= mniejsze lub równe

Oto cztery następne warunki, które możemy użyć w naszych programach:

&& AND (i)

|| OR (lub)

== ma warość

! NOT (nie)

Pierwszy z nich to dwa znaki ampersand, służy do testowania więcej niż jednego warunku w tym samym czasie. Możemy go używać do testowania dwóch zakresów grup wiekowych:

else if (uzytkownik > 18 && uzytkownik < 40)

Tutaj chcemy sprawdzić, czy użytkownik jest starszy niż 18 lat i ma mniej niż 40 lat. Pamiętaj, że staramy się, sprawdzić zawartość zmiennej uzytkownik. Pierwszym warunkiem jest "większe niż 18". Drugim warunkiem jest "mniej niż 40" (uzytkownik < 40). Pomiędzy nimi wpisaliśmy operator (&&). Więc cała linia mówi jeśli użytkownik ma więcej niż 18 lat i użytkownik ma mniej niż 40 lat.

Do pozostałych trzech operatorów za chwilę powrócimy. Ale najpierw wypróbujmy nasz mowy kod:

public class WyrazenieIF {


public static void main(String[] args) {

int uzytkownik = 21;

if (uzytkownik <= 18){
System.out.println("Użytkownik ma mniej lub 18 lat");
} else if (uzytkownik > 18 && uzytkownik < 40) {
System.out.println("Wiek użytkownika zawiera się w przedziale między 19 a 39 lat");
} else {
System.out.println("Użytkownik ma ponad 40 lat");
}

}
}

 Uruchom program i go przetestuj. Powinieneś być w stanie odgadnąć co program wyświetli. Ponieważ wartość zmiennej uzytkownik wynosi 21 to zostanie wykonany warunek else if oto wynik wyświetlony w oknie Output:

run:
Wiek użytkownika zawiera się w przedziale między 19 a 39 lat
BUILD SUCCESSFUL (total time: 0 seconds)

 

Ćwiczenie

Zmień wartość zmiennej uzytkownik od 21 do 45. Teraz powinien zostać wyświetlony komunikat zawarty w warunku else.

Możesz zmieniać warunki dowolnie. Załóżmy, że chcemy sprawdzić czy użytkownik ma 45 lub 50 lat. Możemy użyć dwóch nowych operatorów warunkowych. Możemy sprawdzić, czy zmienna uzytkownik "ma wartość 45" lub "ma wartość 50":

else if (uzytkownik == 45 || uzytkownik == 50)

Aby sprawdzić, czy zmienna uzytkownik ma zadaną wartość musimy użyć dwóch znaków równości, bez spacji między nimi. Java będzie testować warunek dla tej wartości lub innych wartości. Ponieważ chcesz przetestować wiek dla użytkownika, który ma 50 lat, możemy mieć kolejny warunek w okrągłych nawiasach (uzytkownik == 50). To prostu nam mówi, czy wartość zmiennej uzytkownik wynosi 50. W obu warunkach mamy operator lub(||). Całą linię powyżej możemy przetłumaczyć w następujący sposób: jeśli wartość zmiennej uzytkownik równa się 45 lub wartość zmiennej uzytkownik wynosi 50.

 Poniżej kod z nowymi instrukcjami:

package waruneklogiczny;


public class WyrazenieIF {


public static void main(String[] args) {

int uzytkownik = 45;

if (uzytkownik <= 18){
System.out.println("Użytkownik ma mniej lub 18 lat");
} else if (uzytkownik > 18 && uzytkownik < 40) {
System.out.println("Wiek użytkownika zawiera się w przedziale między 18 a 40 lat");
} else if (uzytkownik == 45 || uzytkownik == 50){
System.out.println("Użytkownik ma 45 lub 50 lat");
} else {
System.out.println("Użytkownik ma ponad 40 lat");
}

}
}

 Wypróbuj kod. Zmień wartość zmiennej uzytkownik na 45 i ponownie uruchom program. Następnie zmień wartość na 50 i ponownie uruchom program.

 Istnienie wielu operatorów warunkowych może być trudne w obsłudze. Po prostu testuj wartość zmiennej dla określonego warunku. To po prostu kwestia wybrania odpowiedniego operatora warunkowego.

Zagnieżdżanie wyrażeń if

 Można zagnieżdżać instrukcje if. (Dotyczy to również if...else oraz if...else if). Zagnieżdżanie instrukcji if oznacza po prostu dodanie warunku if wewnątrz innego warunku. Załóżmy, że chcesz się dowiedzieć, czy ktoś jest młodszy niz 18 lat, ale starszy niż 16 lat. Chcesz wyświetlić inny komunikat dla użytkowników, którzy mają ponad 16 lat. Poniżej kod:

if (uzytkownik <19) {
System.out.println("Użytkownik ma 18 lub mniej lat);
}

 Aby sprawdzić czy wiek jest powyżej 16 lat, możesz umieścić drugą instrukcję if we wnętrzu już istniejącej instrukcji if. Oto kod

if (uzytkownik < 19) {

     if (uzytkownik > 16 && uzytkownik < 19) {

          System.out.println("Jesteś w wieku pomiędzy 17 a 18 lat");

     }

}

Pierwsza instrukcja if sprawdza zmienną uzytkownik, jeśli jest to mniej niż 19. Druga instrukcja if zawęża kryterium wieku do przedziału pomiędzy 16 a 19 lat. Aby wyświetlić różne komunikaty, musisz użyć instrukcji if...else zamiast if jak poniżej:

if (uzytkownik < 19) {

     if ( uzytkownik > 16 && uzytkownik < 19) {

          System.out.println("Jesteś w wieku pomiędzy 17 a 18 lat");

     } else {

          System.out.println("Masz 16 lub mniej lat");

     }

}

 Zauważ, że jeśli opuścisz jeden nawias klamrowy to program zgłosi błąd i nie będzie działał.

Zagnieżdżone instrukcje if mogą być trudne w użyciu, ale wszystko co robisz to starasz się oto aby zawęzić wybór.

W następnej części, będziemy mówic o zmiennej typu Boolean.

 

 

Zobacz nasze wszystkie kursy

WWW


HTML
HTML - Znaczniki
CSS - Tutorial
CSS - Selektory
PHP
JavaScript

XML

XSLT

Bazy danych


SQL
SQLite
MySQL
PostgreSQL

 

 

Programowanie


C
C++
C#
Java
VisualBasic
Python

Linux


Podstawy Linuxa
Bash
Linuks artykuły

Windows


Excel funkcje
Windows wskazówki
Outlook

Pozotałe działy


Programy
Rozrywka

 

 

 

This email address is being protected from spambots. You need JavaScript enabled to view it.