English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
In questo tutorial, grazie agli esempi, imparerai le istruzioni di controllo del flusso in Java, utilizzando le espressioni if e if ... else di Java.
Nel campo del programming informatico, di solito si desidera eseguire una parte specifica del codice in base alla condizione specificata che è true o false (solo conosciuta durante l'esecuzione). In questo caso, verranno utilizzate le istruzioni di controllo del flusso.
In Java,if-thenLa sintassi della frase è:
if (expression) { // Istruzione }
Questo è un'espressione booleana (espressione). L'espressione booleana restituisce true o false.
Se l'espressione viene calcolata come true, vengono eseguite le istruzioni all'interno del corpo dell'if (le istruzioni tra parentesi graffe)
Se il risultato del calcolo dell'espressione è false, le istruzioni all'interno del corpo if vengono saltate
class IfStatement { public static void main(String[] args) { int number = 10; //检查数字是否大于0 if (number > 0) { System.out.println("这个数字是正数。"); } System.out.println("Questa istruzione viene sempre eseguita."); } }
Output:
Questo numero è un numero positivo. Questa istruzione viene sempre eseguita.
Nel esempio sopra, abbiamo una variabile chiamata number. Qui, l'espressione di test verifica se number è maggiore di 0 (number > 0).
Poiché il numero è maggiore di 0, il risultato del calcolo dell'espressione di test è true. Allo stesso tempo, verrà eseguito il codice all'interno dell'if.
Ora, cambia il valore di number in un numero negativo intero. Supponiamo che sia -5.
int number = -5;
Se eseguiamo il programma sopra number con il nuovo valore, verrà outputto solo:
Questa istruzione viene sempre eseguita.
Qui, il valore di number è minore di 0. Pertanto, il risultato del calcolo dell'espressione number > 0 è false. Pertanto, non verrà eseguito il codice all'interno di if.
Per ulteriori informazioni sull'espressione di test, visitareOperatori di relazione Java eOperatori logici Java.
Se il risultato del test dell'espressione if è true, viene eseguito il codice specifico della frase. Ma se il risultato del test dell'espressione è false, non viene eseguito alcuna operazione.
In questo caso, possiamo utilizzare il blocco else opzionale. Se il risultato del calcolo dell'espressione di test è false, verrà eseguito il codice all'interno del blocco else. Questo in Java si chiamaif-then-elsefrase.
if-then-elseLa sintassi della frase è:
if (expression) { // 代码 } else { // Altri codici }
Qui, se l'espressione di test è true, il nostro programma eseguirà un compito (il compito all'interno del blocco if), se l'espressione di test è false, eseguirà un altro compito (il codice all'interno del blocco else).
class IfElse { public static void main(String[] args) { int number = 10; //检查数字是否大于0 if (number > 0) { System.out.println("Questo numero è positivo."); } else { System.out.println("Questo numero non è positivo."); } System.out.println("This statement is always executed."); } }
Output:
Questo numero è positivo. Questa istruzione viene sempre eseguita.
Nel esempio sopra, abbiamo una variabile chiamata number. Qui, l'espressione di test verifica se number è maggiore di 0 (number > 0).
Poiché il valore di number è 10, il risultato del calcolo dell'espressione di test è true. Pertanto, verrà eseguito il codice all'interno di if.
Ora, cambia il valore di number in un numero negativo intero. Ad esempio, -5.
int number = -5;
Se eseguiamo il programma number con il nuovo valore, l'output sarà:
Questo numero non è un numero positivo. Questa istruzione viene sempre eseguita.
Qui, il valore di number è -5. Pertanto, il risultato del calcolo dell'espressione di test è false. Pertanto, verrà eseguito il codice all'interno di else.
在Java中,我们有一个if ... else ... if 阶梯语句,可用于在多个其他代码块之间执行其中一个代码块。
if (expression1) { // 代码 } else if(expression2) { // 代码 } else if (expression3) { // 代码 } . . else { // 代码 }
在这里,if语句从上到下执行。一旦测试表达式为true,就执行该if语句主体内的代码。然后,程序的控制跳到if-else-if阶梯语句外面。
如果所有测试表达式均为false,则执行else主体内的代码。
class Ladder { public static void main(String[] args) { int number = 0; //检查数字是否大于0 if (number > 0) { System.out.println("这个数字是正数。"); } //检查数字是否小于0 else if (number < 0) { System.out.println("该数字为负数。"); } else { System.out.println("数字是0。"); } } }
Output:
数字是0。
在上面的示例中,我们正在检查变量number是正数,负数还是零。在这里,我们有两个测试表达式:
number > 0 - 检查 number大于0
number < 0 - 检查 number小于0
在这里,number的值是0。因此,两个测试表达式的计算结果均为false。因此,执行了else主体内部的语句。
在Java中,也可以在if..else语句内if..else语句。这称为嵌套if...else语句。
这是一个查找3个数字中,最大的一个数字的程序:
class Number { public static void main(String[] args) { //声明双精度类型变量 Double n1 = -1.0, n2 = 4.5, n3 = -5.3, largestNumber; //检查n1是否大于或等于n2 if (n1 >= n2) { //if ... else语句在if块内 //Controlla se n1 è maggiore o uguale a n3 if (n1 >= n3) { largestNumber = n1; } else { largestNumber = n3; } } //Istruzione if...else nel blocco else //Controlla se n2 è maggiore o uguale a n3 largestNumber = n2; else { } largestNumber = n3; } } System.out.println("Il numero più grande è " + largestNumber); } }
Output:
Il numero più grande è 4.5
Attenzione:Nel programma sopra, abbiamo assegnato manualmente i valori delle variabili per semplificare il processo di dimostrazione. Tuttavia, nell'applicazione pratica, questi valori possono provenire dai dati di input dell'utente, dai file di log, dai submit dei moduli, ecc.
Java fornisce un'opzione chiamataoperatore ternariooperazione specialesimbolo, èif ... elseUna forma abbreviata di istruzione. Per conoscere l'operatore ternario, visitareOperatore ternario Java.