Nie jestem copywriterem, proszę nie rzucać kapciami.🤗 Przejdźmy od razu do rzeczy. Operator trójskładnikowy wykonuje operację porównania między dwoma obiektami: działa prawie tak samo jak if-else, jest po prostu napisany w bardziej zwięzły sposób. Składa się z warunku, bloku numer jeden i bloku numer dwa i wygląda następująco: (Wartość pierwsza (operacja) wartość dwa, po której następuje znak zapytania (? ) , po czym Blok1 : Blok2 . Co to oznacza? Jeśli w warunek, który mamy Jeśli okaże się Prawda, wykonujemy pierwszy blok, jeśli Fałsz, wykonujemy drugi blok.Powiedzmy, że musimy obliczyć minimum dwóch liczb.Oto najbardziej oczywisty przykład:
int y = 5;
int x = 10;
int min = y < x ? y : x; // Условие | Блок1 | Блок2
System.out.println(min) // min == 5
? - jest to przejście do bloków. Jeśli lewe porównanie ma wartość PRAWDA, wykonywany jest blok JEDEN. W tym przypadku zostanie wykonany Blok 1, ponieważ Y jest mniejsze niż X. Ale co, jeśli będziemy musieli znaleźć minimum, powiedzmy, PIĘĆ liczb? Kolejny wyraźny przykład:
public static int min(int a, int b, int c, int d, int e) {
int min = a < b ? a : b; // А меньше Б? Если да, минимальное число равно A. Иначе min = b;
min = c < min ? c : min; // C меньше МИНИМАЛЬНО ЧИСЛА? Если да min = c. Иначе min = min
min = d < min ? d : min; // D меньше МИНИМАЛЬНО ЧИСЛА? Если да min = d. Иначе min = min
min = e < min ? e : min; // E меньше МИНИМАЛЬНО ЧИСЛА? Если да min = e. Иначе min = min
return min; // Возвращаем полученное минимальное число.
}
W ten piękny sposób otrzymujemy minimalną liczbę pięciu. Mam nadzieję, że wszystko rozumiesz)) A jeśli nie rozumiesz, nie denerwuj się: oto wyjaśnienie w filmie . Koniecznie obejrzyj! https://www.youtube.com/watch?v=fHCNlQY-ssI Zostaw swoje pytania i poprawki w komentarzach.
GO TO FULL VERSION