Typ prosty char
Znaki i Unicode
Typ prosty char to bezpłatna lekcja Java Academy na CoddyKit. To lekcja 1 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Java Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Java Academy zawiera 4 lekcji w sumie.
Czym jest char?
char to prymitywny typ danych w języku Java, który przechowuje pojedynczy znak, na przykład literę, cyfrę lub symbol.
Wartość typu char zapisuje się między pojedynczymi cudzysłowami: 'A', '7' lub '?'. Podwójne cudzysłowy tworzą obiekt typu String, dlatego "A" nie jest wartością char.
char grade = 'A';
char symbol = '#';Wyświetlanie wartości char
Wartość char można przechowywać w zmiennej i wyświetlać tak jak każdą inną wartość.
Kompletny program przedstawiony tutaj deklaruje wartość char i ją wyświetla. Proszę zwrócić uwagę na pojedyncze cudzysłowy wokół litery.
public class Main {
public static void main(String[] args) {
char first = 'J';
System.out.println(first);
}
}char to tak naprawdę liczba
Wewnętrznie każdy char ma kod liczbowy z tabeli Unicode. Litera 'A' ma kod 65, a 'a' ma kod 97.
Po przypisaniu char do typu int Java udostępnia ten numer kodu.
public class Main {
public static void main(String[] args) {
char c = 'A';
int code = c;
System.out.println(code);
}
}Wykonywanie działań matematycznych na char
Ponieważ char jest liczbą, można wykonywać na nim działania arytmetyczne. Dodanie 1 do 'A' przenosi do następnego kodu, czyli 'B'.
Aby ponownie zobaczyć wynik jako literę, należy rzutować go na typ char.
public class Main {
public static void main(String[] args) {
char a = 'A';
char next = (char) (a + 1);
System.out.println(next);
}
}Znaki cyfr a liczby
Należy zachować ostrożność: char '5' nie jest liczbą 5. Znak '5' ma kod Unicode 53.
Aby przekonwertować znak cyfry na jego rzeczywistą wartość liczbową, należy odjąć od niego '0'. Działa to, ponieważ kody cyfr są uporządkowane.
public class Main {
public static void main(String[] args) {
char d = '5';
int value = d - '0';
System.out.println(value);
}
}Specjalne znaki ucieczki
Niektóre znaki zapisuje się za pomocą sekwencji ucieczki z ukośnikiem odwrotnym. '\n' oznacza znak nowego wiersza, '\t' tabulator, a '\'' pojedynczy cudzysłów.
Każda sekwencja ucieczki nadal reprezentuje pojedynczy char, mimo że w kodzie używa dwóch symboli.
char tab = '\t';
char quote = '\'';
char newline = '\n';Porównywanie znaków
Znaki char można porównywać za pomocą ==, < i >, ponieważ porównywane są ich wewnętrzne wartości liczbowe.
Ponieważ 'a' ma wartość 97, a 'b' ma wartość 98, wyrażenie 'a' < 'b' ma wartość true.
public class Main {
public static void main(String[] args) {
char x = 'a';
char y = 'b';
System.out.println(x < y);
}
}char w instrukcji switch
Typ char dobrze sprawdza się w instrukcji switch do wyboru jednej z gałęzi.
Każda etykieta case jest wartością char zapisaną w pojedynczych cudzysłowach. Jest to przydatne przy obsłudze wyborów w menu lub ocenianiu.
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");
}
}
}Domyślna wartość char
Jeśli pole typu char nie otrzyma wartości, domyślnie zawiera znak null o kodzie 0, zapisywany jako '\u0000'.
Zmienne lokalne w metodach nie mają wartości domyślnej, dlatego przed użyciem char należy przypisać mu wartość. W przeciwnym razie kod się nie skompiluje.
char letter;
letter = 'Z';
System.out.println(letter);Sekwencje Unicode
Dowolny char można zapisać za pomocą jego kodu Unicode, używając '\u', po którym następują cztery cyfry szesnastkowe.
Na przykład '\u0041' to litera 'A'. Pozwala to umieszczać w kodzie znaki, które trudno wpisać bezpośrednio.
public class Main {
public static void main(String[] args) {
char a = '\u0041';
System.out.println(a);
}
}Zakres wartości char
Char jest 16-bitową wartością bez znaku, dlatego może przechowywać kody od 0 do 65535. Nie może przyjmować wartości ujemnych.
To wystarcza do przechowywania liter, cyfr i znaków wielu języków świata zapisanych w Unicode.
public class Main {
public static void main(String[] args) {
char max = (char) 65535;
int code = max;
System.out.println(code);
}
}Szybki test
Proszę sprawdzić swoją wiedzę o typie prymitywnym char.
Podsumowanie
char przechowuje jeden znak zapisany w pojedynczych cudzysłowach i opiera się na liczbie Unicode.
Na wartościach char można wykonywać działania matematyczne i porównywać je, a znaki cyfr można konwertować na liczby, odejmując '0'. Rzutowanie z powrotem na char zamienia kod na widoczny znak.
Często zadawane pytania
Czy lekcja „Typ prosty char” jest bezpłatna?
Tak — pełny tekst „Typ prosty char” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Java Academy, przejdź na CoddyKit PRO. Kurs Java Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Typ prosty char”?
Znaki i Unicode Ćwiczysz Java Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Java Academy?
Nie wymagamy żadnego doświadczenia. Java Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 4.
Ile czasu zajmuje lekcja „Typ prosty char”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Java Academy?
Tak. Każda lekcja Java Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.