Kết quả in ra của đoạn mã trên là gì?
public class Delta {
static boolean foo(char c) {
System.out.print(c);
return true;
}
public static void main(String[] argv) {
int i = 0;
for (foo(‘A’);
foo(‘B’) && (i < 2); foo(‘C’)) {
i++;
foo(‘D’);
12.
}
}
}
public class Delta {
static boolean foo(char c) {
System.out.print(c);
return true;
}
public static void main(String[] argv) {
int i = 0;
for (foo(‘A’);
foo(‘B’) && (i < 2); foo(‘C’)) {
i++;
foo(‘D’);
12.
}
}
}
Trả lời:
Đáp án đúng: A
Đoạn code trên minh họa cách vòng lặp `for` hoạt động trong Java, đặc biệt là thứ tự thực thi các phần của vòng lặp.
1. **Khởi tạo:** `foo('A')` được thực thi đầu tiên. In ra 'A'.
2. **Kiểm tra điều kiện:** `foo('B') && (i < 2)` được thực thi. In ra 'B'. Điều kiện `i < 2` (với `i = 0`) là đúng. Do đó, biểu thức `foo('B') && (i < 2)` trả về `true`.
3. **Thực thi thân vòng lặp:**
- `i++` (i trở thành 1).
- `foo('D')` được thực thi. In ra 'D'.
4. **Cập nhật:** `foo('C')` được thực thi. In ra 'C'.
5. **Kiểm tra điều kiện:** `foo('B') && (i < 2)` được thực thi. In ra 'B'. Điều kiện `i < 2` (với `i = 1`) là đúng. Do đó, biểu thức `foo('B') && (i < 2)` trả về `true`.
6. **Thực thi thân vòng lặp:**
- `i++` (i trở thành 2).
- `foo('D')` được thực thi. In ra 'D'.
7. **Cập nhật:** `foo('C')` được thực thi. In ra 'C'.
8. **Kiểm tra điều kiện:** `foo('B') && (i < 2)` được thực thi. In ra 'B'. Điều kiện `i < 2` (với `i = 2`) là sai. Do đó, biểu thức `foo('B') && (i < 2)` trả về `false`, vòng lặp kết thúc.
Như vậy, kết quả in ra là: `ABDCBDCB`.
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
