Toán tử ba ngôi
Thuộc phần Nền tảng cơ bản trong hành trình Java của Coddy. Bài học 30 trên 73.
Toán tử ba ngôi là câu lệnh if-else đơn giản trên một dòng. Câu lệnh này có cú pháp như sau:
variable = (condition) ? value_if_true : value_if_false;Toán tử ba ngôi đánh giá điều kiện. Nếu điều kiện là true, toán tử gán value_if_true cho biến; nếu không, toán tử gán value_if_false.
Ví dụ:
int age = 20;
String message = (age >= 18) ? "Adult" : "Minor";Trong ví dụ này, vì age lớn hơn hoặc bằng 18 nên message sẽ nhận giá trị "Adult". Nếu age nhỏ hơn 18 thì message sẽ nhận giá trị "Minor".
Bạn có thể lồng các toán tử ba ngôi để xử lý nhiều điều kiện:
int score = 75;
String grade = (score >= 90) ? "A" : (score >= 80) ? "B" : (score >= 70) ? "C" : "F";Câu lệnh này kiểm tra nhiều điều kiện theo thứ tự. Nếu score >= 90, điểm là "A"; nếu không, nếu score >= 80, điểm là "B"; nếu không, nếu score >= 70, điểm là "C"; nếu không thì là "F".
Lưu ý: Các toán tử điều kiện lồng nhau có thể khó đọc. Với điều kiện phức tạp, hãy dùng câu lệnh if-else.
Thử thách
Người mớiTạo một chương trình dùng toán tử ba ngôi (ternary operator) để kiểm tra một số là dương, âm hay bằng không. Chương trình cần:
- Nhận một số nguyên từ người dùng.
- Dùng toán tử ba ngôi để xác định số đó là dương, âm hay bằng không.
- In kết quả theo định dạng:
"The number is [positive/negative/zero]".
Tự làm thử
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int number = scanner.nextInt();
String result = "";
// Viết code của bạn bên dưới
System.out.println("The number is " + result);
scanner.close();
}
}Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Nền tảng cơ bản
4Toán tử phần 1
Toán tử số họcToán tử moduloTăng/giảmTăng/giảm sauPhép rút gọn số họcToán tử so sánhSo sánh chuỗi7Nhập xuất cơ bản
Các phương thức System.outĐịnh dạng đầu raLớp ScannerÔn tập: đến 120Ôn tập: đúng hay sai5Toán tử, phần 2
Toán tử logic, phần 1Toán tử logic, phần 2Ôn tập: logic cơ bảnToán tử logic, phần 3Toán tử logic, phần 411Kiến thức cơ bản về mảng
Khai báo mảngTruy cập phần tửChỉnh sửa mảngPhương thức của mảngÔn tập: mảng tíchÔn tập: mảng đảo ngượcTự luyện tập: Trình biên dịch Java online