CONTATTACI

Guide per aspiranti programmatori

developer con sguardo di sfida che armeggia con due pc mettendosi alla prova con java
Lezione 13 / 47

Istruzioni condizionali in Java

Nel mondo della programmazione informatica, la capacità di controllare il flusso di esecuzione di un programma è fondamentale per costruire applicazioni dinamiche e interattive. Le istruzioni condizionali permettono ai programmatori di specificare blocchi di codice che dovrebbero essere eseguiti solo quando certe condizioni sono soddisfatte. In Java, come in molti altri linguaggi di programmazione, le istruzioni condizionali principali sono if, else e switch-case. In questa lezione, esploreremo queste istruzioni condizionali e vedremo come possono essere utilizzate per dirigere il flusso di controllo all’interno di un programma.

 

If in Java

L’istruzione if’ rappresenta il blocco condizionale più elementare ed essenziale. Esso verifica una condizione e, se questa risulta vera, il blocco di codice all’interno dell’istruzione ‘if’ viene eseguito. Se la condizione è falsa, il blocco di codice viene ignorato. Per gestire anche il caso in cui la condizione è falsa, si può estendere la struttura condizionale utilizzando l’istruzione else’. In questo modo, si può specificare un blocco di codice da eseguire quando la condizione è falsa. 

 

if (a > 5) { 
    System.out.println("a è maggiore di 5"); 
} else {
    System.out.println("a non è maggiore di 5");
}

In questo scenario, il programma esamina se la variabile ‘a’ è maggiore di 5. Se la condizione è soddisfatta, il programma restituirà la frase “a è maggiore di 5“; in caso contrario, verrà visualizzata la frase “a non è maggiore di 5“.

 

Esercizio con operatori e if in Java

Supponiamo di avere un negozio e di voler applicare sconti ai clienti in base all’importo totale della loro spesa. Gli sconti saranno applicati come segue:

  • Se la spesa è inferiore a €50, non viene applicato alcuno sconto.
  • Se la spesa è uguale o superiore a €50, viene applicato uno sconto del 20%.

 

public class CalcolatoreSconto {
    public static void main(String[] args) {
        float spesaTotale = 120;  // Imposta l'importo totale della spesa
        
        float sconto = 0;
        float spesaDopoSconto = 0;
        
        if (spesaTotale < 50) {
            sconto = 0;
        } 
         else{
            sconto = spesaTotale * 0.20f;  // Sconto del 20%
        }
        
        spesaDopoSconto = spesaTotale - sconto;
        
        System.out.println("Importo sconto: €" + sconto);
        System.out.println("Importo dopo sconto: €" + spesaDopoSconto);
    }
}

Suggerimento: per il momento, stiamo mettendo da parte l’interpretazione di ‘public class‘ e ‘public static void main‘, focalizzandoci esclusivamente sul resto del codice. È importante notare, tuttavia, che l’esecuzione del programma prende il via dal metodo main, proseguendo, riga per riga, dall’alto verso il basso a meno che il flusso non venga deviato da, per esempio, errori nel codice. Questo implica che operazioni quali la dichiarazione delle variabili debbano essere effettuate obbligatoriamente prima del loro utilizzo nel codice.

Spiegazione: nella prima fase del codice abbiamo dichiarato tre variabili utilizzando il tipo float in modo da rendere ammissibili anche risultati con la virgola e abbiamo assegnato loro dei valori, tra cui anche l’importo della spesa effettuata.

 

        float spesaTotale = 120;  // Imposta l'importo totale della spesa
        
        float sconto = 0;
        float spesaDopoSconto = 0;

Nella seconda fase abbiamo verificato lo sconto spettante per la nostra spesa; nella prima condizione ‘if’ verifichiamo che la spesa sia minore di 50 e, se questa affermazione si dimostra vera, lo sconto applicato sarà di 0; se questo, però, non dovesse essere vero – come nel nostro caso, – il programma passerà al ‘else’ il quale calcolerà lo sconto facendo facendo l’operazione ‘sconto = 120 * 0.20’.

 

    if (spesaTotale < 50) {
            sconto = 0;
        } 
         else{
            sconto = spesaTotale * 0.20f;  // Sconto del 20% (se facciamo calcoli con i float dobbiamo ricordarci di inserire la f alla fine del numero)
        }

Nella parte conclusiva del codice, calcoliamo l’importo della variabile ‘spesaDopoSconto’ sottraendo l’importo dello sconto determinato in precedenza, dall’importo totale della spesa. Successivamente, vengono visualizzati sia l’importo dello sconto (che in questo caso ammonta a €24) sia l’importo finale da pagare dopo l’applicazione dello sconto (che in questo caso è di €96).

 

    spesaDopoSconto = spesaTotale - sconto;
        
        System.out.println("Importo sconto: €" + sconto);
        System.out.println("Importo dopo sconto: €" + spesaDopoSconto);

Attraverso questo esercizio, abbiamo esplorato come gli operatori aritmetici e le strutture di controllo come if e else possano essere utilizzati in un contesto pratico per risolvere problemi reali. In particolare, abbiamo visto come calcolare sconti in base all’importo speso, una situazione comune che potrebbe presentarsi in molti ambiti, non solo nel contesto di un negozio.

 

Switch-case in Java

L’istruzione switch-case è un’alternativa all’uso di molteplici istruzioni if-else quando si hanno diverse condizioni da verificare che dipendono dal valore di una singola variabile. Mentre l’if-else è più flessibile e può valutare una vasta gamma di condizioni, lo switch-case è generalmente più leggibile e organizzato quando si confrontano le stesse variabili con valori specifici e definiti.

 

public class Main {
  public static void main(String[] args) {
    int day = 3;
    switch (day) {
      case 1:
        System.out.println("Monday");
        break;
      case 2:
        System.out.println("Tuesday");
        break;
      case 3:
        System.out.println("Wednesday");
        break;
      case 4:
        System.out.println("Thursday");
        break;
      case 5:
        System.out.println("Friday");
        break;
      case 6:
        System.out.println("Saturday");
        break;
      case 7:
        System.out.println("Sunday");
        break;
    }
  }
}

Quando ‘giorno’ è impostato a 3, il codice passerà attraverso lo switch e raggiungerà il ‘case 3’, dove stamperà “Wednesday” e, poi, uscirà dallo switch a causa del break (che verrà trattato in seguito in modo più dettagliato). Non raggiungerà gli atri case o il default perché il break impedisce di continuare nell’esecuzione dei casi successivi .Nel linguaggio Java, l’operatore switch è stato migliorato nelle versioni più recenti per supportare i tipi String rendendo lo strumento più potente e flessibile.

Contattaci senza impegno per informazioni sul corso

Pagamento rateale

Valore della rata: A PARTIRE DA 115 €/mese.

Esempio di finanziamento 

Importo finanziato: € 2440 in 24 rate da € 115 – TAN fisso 9,55% TAEG 12,57% – importo totale del credito € 2841.

Il costo totale del credito comprende: interessi calcolati al TAN indicato, oneri fiscali (imposta di bollo sul contratto 16,00 euro*) addebitati sulla prima rata, costo mensile di gestione pratica € 3,90, spesa di istruttoria € 0,00, spesa per invio rendicontazione periodica cartacea € 0,98 (o spesa per invio rendicontazione periodica cartacea € 0,00), imposta di bollo su rendicontazione periodica € 0,00. Modalità di rimborso obbligatoria: addebito diretto su c/c. La scadenza delle rate è determinata dal giorno della liquidazione del contratto; la data di scadenza delle rate è prevista il giorno 15 del mese. L’importo di ciascuna rata comprende una quota di capitale crescente e interessi decrescente secondo un piano di ammortamento “alla francese”. Offerta valida dal 01/01/2024 al 31/12/2024.

Messaggio pubblicitario con finalità promozionale. Per le informazioni precontrattuali richiedere sul punto vendita il documento “Informazioni europee di base sul credito ai consumatori” (SECCI) e copia del testo contrattuale. Salvo approvazione di Sella Personal Credit S.p.A. Aulab S.r.l. opera quale intermediario del credito NON in esclusiva.

*In fase di richiesta del finanziamento verrà proposta la facoltà di selezionare, in alternativa all’imposta di bollo sul contratto di 16,00 euro, l’imposta sostitutiva, pari allo 0,25% dell’importo finanziato.

Pagamento rateale

Valore della rata: A PARTIRE DA 210 €/mese.

Esempio di finanziamento  

Importo finanziato: € 4500 in 24 rate da € 210,03 – TAN fisso 9,68% TAEG 11,97% – importo totale del credito € 5146,55.

Il costo totale del credito comprende: interessi calcolati al TAN indicato, oneri fiscali (imposta di bollo sul contratto 16,00 euro*) addebitati sulla prima rata, costo mensile di gestione pratica € 3,90, spesa di istruttoria € 0,00, spesa per invio rendicontazione periodica cartacea € 0,98 (o spesa per invio rendicontazione periodica cartacea € 0,00), imposta di bollo su rendicontazione periodica € 0,00. Modalità di rimborso obbligatoria: addebito diretto su c/c. La scadenza delle rate è determinata dal giorno della liquidazione del contratto; la data di scadenza delle rate è prevista il giorno 15 del mese. L’importo di ciascuna rata comprende una quota di capitale crescente e interessi decrescente secondo un piano di ammortamento “alla francese”. Offerta valida dal 01/01/2024 al 31/12/2024.

Messaggio pubblicitario con finalità promozionale. Per le informazioni precontrattuali richiedere sul punto vendita il documento “Informazioni europee di base sul credito ai consumatori” (SECCI) e copia del testo contrattuale. Salvo approvazione di Sella Personal Credit S.p.A. Aulab S.r.l. opera quale intermediario del credito NON in esclusiva.

* In fase di richiesta del finanziamento verrà proposta la facoltà di selezionare, in alternativa all’imposta di bollo sul contratto di 16,00 euro, l’imposta sostitutiva, pari allo 0,25% dell’importo finanziato.

Contattaci senza impegno per informazioni sul corso

Scopriamo insieme se i nostri corsi fanno per te. Compila il form e aspetta la chiamata di uno dei nostri consulenti.