Java: condizioni (if/else), input da tastiera, metodi

In ogni linguaggio di programmazione moderno come Java, è essenziale poter prendere decisioni, interagire con l’utente e organizzare il codice in blocchi riutilizzabili. In questa sezione analizzeremo tre concetti fondamentali: le strutture condizionali if/else, la lettura dell’input da tastiera, e l’uso dei metodi.

Condizioni: if, else if, else

Le strutture condizionali permettono di eseguire porzioni di codice solo se determinate condizioni logiche risultano vere. L’istruzione if verifica una condizione booleana e, se questa è vera, esegue il blocco di codice associato. L’istruzione else consente di definire un comportamento alternativo, mentre else if permette di valutare condizioni multiple in sequenza. Questo tipo di controllo è alla base della logica decisionale nei programmi, ed è indispensabile per creare comportamenti dinamici.

Input da Tastiera

L’interazione con l’utente è un aspetto chiave di molte applicazioni. In Java, l’input da tastiera può essere gestito in modo semplice ed efficiente mediante la classe Scanner, appartenente al package java.util. Questa classe permette di leggere vari tipi di dati (stringhe, numeri interi, numeri in virgola mobile, ecc.) digitati dall’utente durante l’esecuzione del programma. L’input dinamico consente di rendere le applicazioni più flessibili e personalizzabili.

Metodi

I metodi rappresentano blocchi di codice riutilizzabili che eseguono una specifica operazione. In Java, ogni metodo deve appartenere a una classe, e può essere definito per restituire un valore o per eseguire un compito (metodi void). I metodi migliorano la leggibilità, la modularità e la manutenibilità del codice, permettendo di suddividere un programma complesso in unità più semplici e specializzate. Inoltre, l’uso corretto dei metodi promuove la programmazione orientata agli oggetti e facilita il riutilizzo del codice.

1. Condizioni (if, else, else if)

Servono per eseguire qualcosa solo se una condizione è vera.

Esempi:

int età = 18;

if (età >= 18) {
    System.out.println("Sei maggiorenne.");
} else {
    System.out.println("Sei minorenne.");
}

Puoi aggiungere condizioni multiple:

int voto = 7;

if (voto >= 9) {
    System.out.println("Ottimo");
} else if (voto >= 6) {
    System.out.println("Sufficiente");
} else {
    System.out.println("Insufficiente");
}

✅ Operatori comuni:

OperatoreSignificato
==uguale
!=diverso
<, >, <=, >=minore, maggiore…
&&e logico
`

⌨️ 2. Input da tastiera

Serve per chiedere dati all’utente.

Esempio con Scanner:

import java.util.Scanner;

public class InputDemo {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);

        System.out.print("Come ti chiami? ");
        String nome = input.nextLine();

        System.out.print("Quanti anni hai? ");
        int età = input.nextInt();

        System.out.println("Ciao " + nome + ", hai " + età + " anni.");
    }
}

✳️ Importante: Scanner si importa con import java.util.Scanner;

3. Funzioni (metodi)

Un metodo è un blocco di codice riutilizzabile.

Sintassi base:

public static void saluta() {
    System.out.println("Ciao dal metodo!");
}

Metodo con parametri:

public static void salutaPersona(String nome) {
    System.out.println("Ciao, " + nome + "!");
}

Metodo che ritorna un valore:

public static int somma(int a, int b) {
    return a + b;
}

Esempio completo:

public class MetodiDemo {
    public static void main(String[] args) {
        saluta(); // stampa un saluto generico

        salutaPersona("Luca"); // saluta qualcuno

        int risultato = somma(3, 4);
        System.out.println("Somma: " + risultato);
    }

    public static void saluta() {
        System.out.println("Ciao!");
    }

    public static void salutaPersona(String nome) {
        System.out.println("Ciao, " + nome + "!");
    }

    public static int somma(int a, int b) {
        return a + b;
    }
}

Compila con:

javac MetodiDemo.java
java MetodiDemo