Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Catene Else If in Java | Operatori e Condizionali
Introduzione a Java

Catene Else If in Java

Scorri per mostrare il menu

Finora, le istruzioni if-else funzionano bene quando sono necessari solo due risultati. Tuttavia, nei sistemi reali, le decisioni sono solitamente più articolate.

Ad esempio, una caffetteria potrebbe avere diversi livelli di premi a seconda di quanti articoli vengono ordinati:

  • ordini piccoli non ricevono nulla di extra;
  • ordini medi ricevono un piccolo bonus;
  • ordini grandi ricevono una ricompensa maggiore;
  • ordini molto grandi possono sbloccare un'offerta speciale.

Qui entrano in gioco le catene else if — permettono di verificare più condizioni una dopo l'altra. Il programma procede dall'alto verso il basso e, non appena trova una condizione che è true, esegue quel blocco e ignora tutto il resto.

Struttura

if (condition1) {
    // runs if condition1 is true
} else if (condition2) {
    // runs if condition2 is true
} else {
    // runs if none are true
}

Solo un blocco verrà eseguito — vince la prima condizione che corrisponde.

Esempio

Main.java

Main.java

123456789101112131415161718
package com.example; public class Main { public static void main(String[] args) { int deliveryDistance = 7; if (deliveryDistance > 20) { System.out.println("Delivery fee: 10€"); } else if (deliveryDistance > 10) { System.out.println("Delivery fee: 5€"); } else if (deliveryDistance > 5) { System.out.println("Delivery fee: 2€"); } else { System.out.println("Free delivery"); } } }

Si confronta deliveryDistance con ciascuna condizione dall'alto verso il basso. Poiché 7 non è maggiore di 20 o 10, ma è maggiore di 5, il terzo blocco corrisponde e stampa "Delivery fee: 2€". L'else in fondo verrebbe eseguito solo se nessuna delle condizioni fosse soddisfatta.

È molto importante capire che l'ordine è fondamentale. Poiché Java si ferma alla prima condizione true, occorre strutturare i controlli dalla più restrittiva alla più generale — altrimenti una condizione più ampia potrebbe intercettare valori destinati a una regola più specifica.

Considera le catene else if come una scala decisionale — il programma scende gradino dopo gradino fino a trovare la corrispondenza corretta.

question mark

Cosa verrà stampato?

Seleziona la risposta corretta

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 3. Capitolo 5

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

Sezione 3. Capitolo 5
some-alt