English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial di base Java

Java Controllo dei flussi

Java Array

Java Orientato agli oggetti (I)

Java Orientato agli oggetti (II)

Java Orientato agli oggetti (III)

Gestione delle eccezioni Java

Java List

Java Queue (Coda)

Java Map Collection

Java Set Collection

Java Input/Output (I/O)

Java Reader/Writer

Altri argomenti Java

Programma Java per invertire un numero

Esempi Java completi

In questo programma, imparerai a invertire un numero utilizzando il ciclo while e il ciclo for in Java.

Esempio: In Java, utilizzare il ciclo while per invertire un numero

public class ReverseNumber {
    public static void main(String[] args) {}}
        int num = 1234, reversed = 0;
        while(num != 0) {
            int digit = num % 10;
            reversed = reversed * 10 + digit;
            num /= 10;
        }
        System.out.println("Numero invertito: " + reversed);
    }
}

Quando si esegue questo programma, l'output è:

Numero invertito: 4321

In questo programma, il ciclo while viene utilizzato per invertire il numero seguendo i seguenti passaggi:

  • Prima di tutto, archiviare il resto di num diviso per 10 nella variabile digit. Ora, digit contiene l'ultimo numero di num, ovvero 4, poi moltiplicare digit per 10 e aggiungerlo alla variabile invertita. Moltiplicare per 10 aggiungerà una nuova posizione nel numero invertito. Un decimo moltiplicato per 10 darà il decimo posto, un centesimo darà il centesimo, e così via. In questo caso, reversed contiene 0 * 10 + 4 = 4.
    Poi num diviso per 10, quindi ora contiene solo i primi tre numeri: 123.

  • Dopo la seconda iterazione, digit è uguale a 3, reversed è 4 * 10 + 3 = 43 e num = 12

  • Dopo la terza iterazione, digit è uguale a 2, reversed è 43 * 10 + 2 = 432 e num = 1

  • Dopo la quarta iterazione, digit è uguale a 1, reversed è 432 * 10 + 1 = 4321 e num = 0

  • Ora num = 0, quindi l'espressione di test num != 0 fallisce e il ciclo while si esce. reversed contiene già il numero invertito 4321.

Esempio 2: In Java, utilizzare il ciclo for per invertire un numero

public class ReverseNumber {
    public static void main(String[] args) {}}
        int num = 1234567, reversed = 0;
        for(;num != 0; num /= 10) {
            int digit = num % 10;
            reversed = reversed * 10 + digit;
        }
        System.out.println("Numero inverso: " + reversed);
    }
}

Quando si esegue questo programma, l'output è:

Numero inverso: 7654321

Nel programma sopra, il ciclo while è sostituito dal ciclo for, dove:

  • Senza espressione di inizializzazione

  • L'espressione di test rimane invariata (num != 0)

  • L'espressione di aggiornamento/incremento contiene num /= 10.

Pertanto, dopo ogni iterazione, l'espressione di aggiornamento viene eseguita, eliminando l'ultimo numero num.

Quando il ciclo for esce, reversed conterrà il numero inverso.

Esempi Java completi