Đoạn mã nào sau đây in ra màn hình chữ "Equal":
Trả lời:
Đáp án đúng: D
Đáp án A đúng vì so sánh giữa `int` và `float` sử dụng `==` sẽ so sánh giá trị. Trong trường hợp này, `x` là 100 và `y` là 100.0, vì vậy điều kiện `x == y` là đúng và "Equal" được in ra.
Đáp án B sai vì khi so sánh hai đối tượng `Integer` bằng `==`, ta đang so sánh tham chiếu (địa chỉ) của chúng trong bộ nhớ, chứ không phải giá trị. Trong trường hợp này, `x` và `y` là hai đối tượng `Integer` khác nhau, mặc dù có cùng giá trị là 100, do đó `x == y` sẽ trả về `false`.
Đáp án C đúng vì `String` là một immutable object. Khi `x = "100"` và `y = "100"`, cả hai biến `x` và `y` có thể trỏ đến cùng một đối tượng chuỗi trong string pool, do đó `x == y` có thể trả về `true`. Tuy nhiên, điều này không đảm bảo, và việc so sánh chuỗi nên sử dụng phương thức `.equals()` để đảm bảo so sánh giá trị, không phải tham chiếu.
Vì đáp án A đúng và đáp án C có thể đúng hoặc sai, đáp án D sai.
Tổng hợp 350 câu hỏi trắc nghiệm môn lập trình mạng có đáp án đầy đủ nhằm giúp các bạn dễ dàng ôn tập lại toàn bộ các kiến thức.
50 câu hỏi 60 phút
Câu hỏi liên quan

FORM.08: Bộ 130+ Biểu Mẫu Thống Kê Trong Doanh Nghiệp

FORM.07: Bộ 125+ Biểu Mẫu Báo Cáo Trong Doanh Nghiệp

FORM.06: Bộ 320+ Biểu Mẫu Hành Chính Thông Dụng

FORM.05: Bộ 330+ Biểu Mẫu Thuế - Kê Khai Thuế Mới Nhất

FORM.04: Bộ 240+ Biểu Mẫu Chứng Từ Kế Toán Thông Dụng
