Kiểu dữ liệu ký tự (char)
1. Khai báo char
Phần tiêu đề “1. Khai báo char”char lưu trữ một ký tự Unicode 16-bit duy nhất, dùng dấu nháy đơn ('):
char grade = 'A';char digit = '7';char symbol = '$';⚠️ Dấu nháy đơn chỉ chứa đúng một ký tự - char letter = 'AB'; là lỗi biên dịch. Chuỗi nhiều ký tự phải dùng String với dấu nháy kép.
2. char thực chất là một số
Phần tiêu đề “2. char thực chất là một số”Bên dưới, char được lưu như một số nguyên không dấu 16-bit (mã Unicode của ký tự đó). Vì vậy có thể thực hiện phép toán số học trên char:
char letter = 'A';int code = letter; // Ép kiểu ngầm định: 65 (mã Unicode của 'A')char next = (char) (letter + 1); // Cần ép kiểu tường minh về char: 'B'
System.out.println(code); // 65System.out.println(next); // BLưu ý: char + int cho kết quả kiểu int, nên phải ép kiểu (char) tường minh nếu muốn kết quả vẫn là char.
3. Escape sequence (ký tự thoát)
Phần tiêu đề “3. Escape sequence (ký tự thoát)”char newline = '\n'; // Xuống dòngchar tab = '\t'; // Tabchar quote = '\''; // Dấu nháy đơnchar backslash = '\\'; // Dấu gạch chéo ngượcchar unicodeHeart = '❤'; // Ký tự Unicode theo mã \uXXXX4. char khác String
Phần tiêu đề “4. char khác String”char c = 'A'; // char - một ký tự, dấu nháy đơnString s = "A"; // String - một chuỗi (dù chỉ có 1 ký tự), dấu nháy kép// char wrong = "A"; // LỖI BIÊN DỊCH! Không thể gán String cho charTổng kết
Phần tiêu đề “Tổng kết”charlưu một ký tự Unicode 16-bit, dùng dấu nháy đơncharthực chất là một số nguyên - có thể tính toán và cần ép kiểu(char)khi muốn giữ kết quả làchar- Không nhầm lẫn
char(nháy đơn, một ký tự) vớiString(nháy kép, chuỗi ký tự)