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. } } }
A. ABDCBDCB
Đáp án chính xác
B. ABCDABCD
C. Lỗi biên dịch
D. Chương trình không lỗi, nhưng khi chạy sẽ sinh lỗi
Vì: + Bắt đầu vòng lặp sẽ gọi foo(‘A’) => In ra chữ A + Thực hiện lệnh foo(‘B’) && i<2 => in ra B + Thực hiện foo(‘D’) => in ra D + Thực hiện foo(‘C’) => in ra C Tiếp theo tăng i lên 1 và thực hiện lần lượt các lệnh foo(‘B’), foo(‘D’), foo(‘C’) => in ra BDC Và cuối cùng tăng i=2 rồi thực hiện lệnh foo(‘B’)&i<2 => in ra B và kết thúc vòng lặp ð In ra là: ABDCBDCB
Câu trả lời này có hữu ích không?
0
0
CÂU HỎI HOT CÙNG CHỦ ĐỀ
Câu 1:
Khối lệnh thực hiện chuyện gì? int[] mang = new int[10]; int s = 0; int j = 0; for (int i: mang) { i = ++j; s += i; } System.out.println(“S = “ + s);
Đoạn mã sau có lỗi biên dịch nào sau? class Student { protected String name; } public class Man extends Student { public static void main(String[] args) { Man m = new Man(); m.name = "John"; } }
Chương trình sẽ in ra cái gì? class A { final public int method1(int a, int b) { return 0; } } class B extends A { public int method1(int a, int b) { return 1; } } public class Test { public static void main(Strings args[]) { B b; System.out.println("x = " + b.method1(0, 1)); } }
Đoạn mã sau có lỗi biên dịch gì? class Person { protected String name; public int age; }; public class Main { public static void main(String[] args) { Person p = new Person(); p.name = "Tom"; } }
Đoạn mã sau in ra màn hình xâu ký tự nào sau: class Student { public String sayHello() { return "Student"; } } public class Man extends Student { public String sayHello() { return super.sayHello(); } public static void main(String[] args) { Student m = new Student(); System.out.println(m.sayHello()); } }
Câu 1: Nếu 2 đối tượng bằng nhau trong cùng một mảng và mảng đó được sắp xếp, các phần tử bằng nhau không thể thay đối thứ tự của chúng? Câu 2: Chỉ số mảng bắt đầu từ 1
Hãy cho biết kết quả khi chạy đoạn chương trình sau? class Student { public int getAge() { return 10; } } public class Man extends Student { public int getAge(int added) { return super.getAge() + added; } public static void main(String[] args) { Man s = new Man(); System.out.println(s.getAge()); System.out.println(s.getAge()); } }
Đoạn mã sau có kết quả như thế nào? class Student { private String name; } public class Man extends Student { private String name; public static void main(String[] args) { Student m = new Student(); m.name = "Peter"; } }
Đoạn mã sau có lỗi biên dịch gì? public class Person { protected String name; protected int age; public static void main(String[] args) { Person p = new Person(); p.name = "Tom"; System.out.println(p.name); } }
Chương trình sau in ra mà hình xâu nào? public class Main { public static void main(String[] args) { String names[] = { "John", "Anna", "Peter", "Victor", "David" }; names = new String[5]; System.out.println(names[2]); } }