Cho đoạn mã sau đây. Sau khi thực hiện, kết quả in lên màn hình là bao nhiêu?
int a = 6,
b = 2;
System.out.println((a > b) ? 10 : 9.0);
int a = 6,
b = 2;
System.out.println((a > b) ? 10 : 9.0);
b = 2;
System.out.println((a > b) ? 10 : 9.0);
Trả lời:
Đáp án đúng: D
Đoạn mã sử dụng toán tử điều kiện (ternary operator) trong Java.
`a > b` là một biểu thức boolean. Trong trường hợp này, a = 6 và b = 2, vì vậy `a > b` là `true`. Do đó, biểu thức sẽ trả về giá trị sau dấu `?`, tức là `10`.
Tuy nhiên, do phần "else" của toán tử điều kiện là `9.0` (một số kiểu `double`), Java sẽ tự động chuyển đổi `10` thành `10.0` để đảm bảo kiểu dữ liệu nhất quán cho toàn bộ biểu thức điều kiện. Do đó, kết quả cuối cùng sẽ là `10.0`.





