Il tipo primitivo char
Caratteri e Unicode
Il tipo primitivo char è una lezione Java Academy gratuita su CoddyKit. Questa è la lezione 1 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Java Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Java Academy include 4 lezioni in totale.
Che cos'è un char?
Un char è un tipo primitivo di Java che contiene un singolo carattere, come una lettera, una cifra o un simbolo.
Un valore char si scrive tra apici singoli: 'A', '7' o '?'. Le virgolette doppie creano invece una String, quindi "A" non è un char.
char grade = 'A';
char symbol = '#';Stampare un char
Può memorizzare un char in una variabile e stamparlo proprio come qualsiasi altro valore.
Qui un programma completo dichiara un char e lo stampa. Noti gli apici singoli intorno alla lettera.
public class Main {
public static void main(String[] args) {
char first = 'J';
System.out.println(first);
}
}char è davvero un numero
Internamente, ogni char ha un codice numerico della tabella Unicode. La lettera 'A' ha il codice 65, mentre 'a' ha il codice 97.
Se assegna un char a un int, Java restituisce quel numero di codice.
public class Main {
public static void main(String[] args) {
char c = 'A';
int code = c;
System.out.println(code);
}
}Eseguire calcoli con char
Poiché un char è un numero, può eseguire operazioni aritmetiche su di esso. Aggiungere 1 a 'A' porta al codice successivo, che corrisponde a 'B'.
Per visualizzarlo nuovamente come lettera, esegua il cast del risultato a char.
public class Main {
public static void main(String[] args) {
char a = 'A';
char next = (char) (a + 1);
System.out.println(next);
}
}Caratteri numerici e numeri
Faccia attenzione: il char '5' non è il numero 5. Il carattere '5' ha il codice Unicode 53.
Per convertire un char che rappresenta una cifra nel suo valore numerico effettivo, sottragga '0'. Funziona perché i codici delle cifre sono ordinati.
public class Main {
public static void main(String[] args) {
char d = '5';
int value = d - '0';
System.out.println(value);
}
}Caratteri di escape speciali
Alcuni caratteri si scrivono usando un escape con barra rovesciata. '\n' indica una nuova riga, '\t' una tabulazione e '\'' un apice singolo.
Ogni escape rappresenta comunque un singolo char, anche se nel codice usa due simboli.
char tab = '\t';
char quote = '\'';
char newline = '\n';Confrontare i caratteri
Può confrontare i char con ==, < e > perché questi operatori confrontano i numeri sottostanti.
Poiché 'a' è 97 e 'b' è 98, l'espressione 'a' < 'b' è vera.
public class Main {
public static void main(String[] args) {
char x = 'a';
char y = 'b';
System.out.println(x < y);
}
}char in uno switch
Un char funziona bene all'interno di un'istruzione switch per scegliere tra diversi casi.
Ogni etichetta case è un char racchiuso tra apici singoli. È utile per le opzioni dei menu o per le valutazioni.
public class Main {
public static void main(String[] args) {
char grade = 'B';
switch (grade) {
case 'A': System.out.println("Great"); break;
case 'B': System.out.println("Good"); break;
default: System.out.println("Keep going");
}
}
}Valore predefinito di char
Se a un campo char non viene assegnato un valore, il suo valore predefinito è il carattere nullo con codice 0, scritto '\u0000'.
Le variabili locali nei metodi non hanno un valore predefinito, quindi deve assegnare un char prima di usarlo; in caso contrario il codice non verrà compilato.
char letter;
letter = 'Z';
System.out.println(letter);Escape Unicode
Può scrivere qualsiasi char usando il relativo codice Unicode con '\u' seguito da quattro cifre esadecimali.
Ad esempio, '\u0041' è la lettera 'A'. In questo modo può includere caratteri difficili da digitare direttamente.
public class Main {
public static void main(String[] args) {
char a = '\u0041';
System.out.println(a);
}
}Limiti dell'intervallo di char
Un char è un valore senza segno a 16 bit, quindi può contenere codici da 0 a 65535. Non può essere negativo.
Questo spazio è sufficiente per lettere, cifre e caratteri di molte lingue del mondo rappresentati in Unicode.
public class Main {
public static void main(String[] args) {
char max = (char) 65535;
int code = max;
System.out.println(code);
}
}Verifica rapida
Verifichi la sua comprensione del tipo primitivo char.
Riepilogo
Un char contiene un carattere tra apici singoli ed è rappresentato internamente da un numero Unicode.
Può eseguire calcoli sui char, confrontarli e convertire i char che rappresentano cifre in numeri sottraendo '0'. Eseguire il cast a char trasforma un codice in un carattere visibile.
Domande Frequenti
La lezione «Il tipo primitivo char» è gratuita?
Sì — il testo completo di «Il tipo primitivo char» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Java Academy, passa a CoddyKit PRO. Il corso Java Academy include 4 lezioni in totale.
Cosa imparerò in «Il tipo primitivo char»?
Caratteri e Unicode Eserciti Java Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Java Academy?
Non è richiesta alcuna esperienza precedente. Java Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 1 di 4.
Quanto tempo richiede la lezione «Il tipo primitivo char»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Java Academy?
Sì. Ogni lezione Java Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Il tipo primitivo char
- Metodi di supporto per i caratteri
- Iterare sui caratteri
- Conteggio e filtro dei caratteri