Explore topic-wise MCQs in Java Programming.

This section includes 38 Mcqs, each offering curated multiple-choice questions to sharpen your Java Programming knowledge and support exam preparation. Choose a topic below to get started.

1.

What will be the output of the program? String s = "hello"; Object o = s; if( o.equals(s) ) { System.out.println("A"); } else { System.out.println("B"); } if( s.equals(o) ) { System.out.println("C"); } else { System.out.println("D"); } A B C D

A. 1 and 3
B. 2 and 4
C. 3 and 4
D. 1 and 2
Answer» B. 2 and 4
2.

What will be the output of the program?System.out.println(Math.sqrt(-4D));

A. -2
B.
C. Compile Error
D. Runtime Exception
Answer» C. Compile Error
3.

What is the value of "d" after this line of code has been executed?double d = Math.round ( 2.5 + Math.random() );

A. 2
B. 3
C. 4
D. 2.5
Answer» C. 4
4.

What will be the output of the program (in jdk1.6 or above)? public class BoolTest { public static void main(String [] args) { Boolean b1 = new Boolean("false"); boolean b2; b2 = b1.booleanValue(); if (!b2) { b2 = true; System.out.print("x "); } if (b1 & b2) /* Line 13 */ { System.out.print("y "); } System.out.println("z"); } }

A. z
B. x z
C. y z
D. Compilation fails.
Answer» C. y z
5.

What will be the output of the program? public class ExamQuestion6 { static int x; boolean catch() { x++; return true; } public static void main(String[] args) { x=0; if ((catch() | catch()) || catch()) x++; System.out.println(x); } }

A. 1
B. 2
C. 3
D. Compilation Fails
Answer» E.
6.

What will be the output of the program? class A { public A(int x){} } class B extends A { } public class test { public static void main (String args []) { A a = new B(); System.out.println("complete"); } }

A. It compiles and runs printing nothing
B. Compiles but fails at runtime
C. Compile Error
D. Prints "complete"
Answer» D. Prints "complete"
7.

What will be the output of the program? String a = "ABCD"; String b = a.toLowerCase(); b.replace('a','d'); b.replace('b','c'); System.out.println(b);

A. abcd
B. ABCD
C. dccd
D. dcba
Answer» B. ABCD
8.

What will be the output of the program? String a = "newspaper"; a = a.substring(5,7); char b = a.charAt(1); a = a + b; System.out.println(a);

A. apa
B. app
C. apea
D. apep
Answer» C. apea
9.

What will be the output of the program? int i = 1, j = 10; do { if(i++ > --j) /* Line 4 */ { continue; } } while (i < 5); System.out.println("i = " + i + "and j = " + j); /* Line 9 */

A. i = 6 and j = 5
B. i = 5 and j = 5
C. i = 6 and j = 6
D. i = 5 and j = 6
Answer» E.
10.

What will be the output of the program? try { Float f1 = new Float("3.0"); int x = f1.intValue(); byte b = f1.byteValue(); double d = f1.doubleValue(); System.out.println(x + b + d); } catch (NumberFormatException e) /* Line 9 */ { System.out.println("bad number"); /* Line 11 */ }

A. 9
B. bad number
C. Compilation fails on line 9.
D. Compilation fails on line 11.
Answer» B. bad number
11.

What will be the output of the program? String s = "hello"; Object o = s; if( o.equals(s) ) { System.out.println("A"); } else { System.out.println("B"); } if( s.equals(o) ) { System.out.println("C"); } else { System.out.println("D"); } A B C D

A. 1 and 3
B. 2 and 4
C. 3 and 4
D. 1 and 2
Answer» B. 2 and 4
12.

What will be the output of the program? System.out.println(Math.sqrt(-4D));

A. -2
B. NaN
C. Compile Error
D. Runtime Exception
Answer» C. Compile Error
13.

What will be the output of the program? interface Foo141 { int k = 0; /* Line 3 */ } public class Test141 implements Foo141 { public static void main(String args[]) { int i; Test141 test141 = new Test141(); i = test141.k; /* Line 11 */ i = Test141.k; i = Foo141.k; } }

A. Compilation fails.
B. Compiles and runs ok.
C. Compiles but throws an Exception at runtime.
D. Compiles but throws a RuntimeException at runtime.
Answer» C. Compiles but throws an Exception at runtime.
14.

What will be the output of the program? public class SqrtExample { public static void main(String [] args) { double value = -9.0; System.out.println( Math.sqrt(value)); } }

A. 3
B. -3
C. NaN
D. Compilation fails.
Answer» D. Compilation fails.
15.

What will be the output of the program? String s = "ABC"; s.toLowerCase(); s += "def"; System.out.println(s);

A. ABC
B. abc
C. ABCdef
D. Compile Error
Answer» D. Compile Error
16.

What will be the output of the program? String x = "xyz"; x.toUpperCase(); /* Line 2 */ String y = x.replace('Y', 'y'); y = y + "abc"; System.out.println(y);

A. abcXyZ
B. abcxyz
C. xyzabc
D. XyZabc
Answer» D. XyZabc
17.

What will be the output of the program? int i = (int) Math.random();

A. i = 0
B. i = 1
C. value of i is undetermined
D. Statement causes a compile error
Answer» B. i = 1
18.

What will be the output of the program? class Tree { } class Pine extends Tree { } class Oak extends Tree { } public class Forest1 { public static void main (String [] args) { Tree tree = new Pine(); if( tree instanceof Pine ) System.out.println ("Pine"); else if( tree instanceof Tree ) System.out.println ("Tree"); else if( tree instanceof Oak ) System.out.println ( "Oak" ); else System.out.println ("Oops "); } }

A. Pine
B. Tree
C. Forest
D. Oops
Answer» B. Tree
19.

What will be the output of the program? public class StringRef { public static void main(String [] args) { String s1 = "abc"; String s2 = "def"; String s3 = s2; /* Line 7 */ s2 = "ghi"; System.out.println(s1 + s2 + s3); } }

A. abcdefghi
B. abcdefdef
C. abcghidef
D. abcghighi
Answer» D. abcghighi
20.

What will be the output of the program? class Q207 { public static void main(String[] args) { int i1 = 5; int i2 = 6; String s1 = "7"; System.out.println(i1 + i2 + s1); /* Line 8 */ } }

A. 18
B. 117
C. 567
D. Compiler error
Answer» C. 567
21.

What will be the output of the program? String d = "bookkeeper"; d.substring(1,7); d = "w" + d; d.append("woo"); /* Line 4 */ System.out.println(d);

A. wookkeewoo
B. wbookkeeper
C. wbookkeewoo
D. Compilation fails.
Answer» E.
22.

What will be the output of the program? public class Test178 { public static void main(String[] args) { String s = "foo"; Object o = (Object)s; if (s.equals(o)) { System.out.print("AAA"); } else { System.out.print("BBB"); } if (o.equals(s)) { System.out.print("CCC"); } else { System.out.print("DDD"); } } }

A. AAACCC
B. AAADDD
C. BBBCCC
D. BBBDDD
Answer» B. AAADDD
23.

What will be the output of the program? public class Test { public static void main(String[] args) { final StringBuffer a = new StringBuffer(); final StringBuffer b = new StringBuffer(); new Thread() { public void run() { System.out.print(a.append("A")); synchronized(b) { System.out.print(b.append("B")); } } }.start(); new Thread() { public void run() { System.out.print(b.append("C")); synchronized(a) { System.out.print(a.append("D")); } } }.start(); } }

A. ACCBAD
B. ABBCAD
C. CDDACB
D. Indeterminate output
Answer» E.
24.

What will be the output of the program? public class WrapTest { public static void main(String [] args) { int result = 0; short s = 42; Long x = new Long("42"); Long y = new Long(42); Short z = new Short("42"); Short x2 = new Short(s); Integer y2 = new Integer("42"); Integer z2 = new Integer(42); if (x == y) /* Line 13 */ result = 1; if (x.equals(y) ) /* Line 15 */ result = result + 10; if (x.equals(z) ) /* Line 17 */ result = result + 100; if (x.equals(x2) ) /* Line 19 */ result = result + 1000; if (x.equals(z2) ) /* Line 21 */ result = result + 10000; System.out.println("result = " + result); } }

A. result = 1
B. result = 10
C. result = 11
D. result = 11010
Answer» C. result = 11
25.

What will be the output of the program? public class Test138 { public static void stringReplace (String text) { text = text.replace ('j' , 'c'); /* Line 5 */ } public static void bufferReplace (StringBuffer text) { text = text.append ("c"); /* Line 9 */ } public static void main (String args[]) { String textString = new String ("java"); StringBuffer textBuffer = new StringBuffer ("java"); /* Line 14 */ stringReplace(textString); bufferReplace(textBuffer); System.out.println (textString + textBuffer); } }

A. java
B. javac
C. javajavac
D. Compile error
Answer» D. Compile error
26.

What two statements are true about the result obtained from calling Math.random()? The result is less than 0.0. The result is greater than or equal to 0.0.. The result is less than 1.0. The result is greater than 1.0. The result is greater than or equal to 1.0.

A. 1 and 2
B. 2 and 3
C. 3 and 4
D. 4 and 5
Answer» C. 3 and 4
27.

What will be the output of the program? public class NFE { public static void main(String [] args) { String s = "42"; try { s = s.concat(".5"); /* Line 8 */ double d = Double.parseDouble(s); s = Double.toString(d); int x = (int) Math.ceil(Double.valueOf(s).doubleValue()); System.out.println(x); } catch (NumberFormatException e) { System.out.println("bad number"); } } }

A. 42
B. 42.5
C. 43
D. bad number
Answer» D. bad number
28.

Which of the following will produce an answer that is closest in value to a double, d, while not being greater than d?

A. (int)Math.min(d);
B. (int)Math.max(d);
C. (int)Math.abs(d);
D. (int)Math.floor(d);
Answer» E.
29.

What will be the output of the program? public class ObjComp { public static void main(String [] args ) { int result = 0; ObjComp oc = new ObjComp(); Object o = oc; if (o == oc) result = 1; if (o != oc) result = result + 10; if (o.equals(oc) ) result = result + 100; if (oc.equals(o) ) result = result + 1000; System.out.println("result = " + result); } }

A. 1
B. 10
C. 101
D. 1101
Answer» E.
30.

What will be the output of the program? public class Example { public static void main(String [] args) { double values[] = {-2.3, -1.0, 0.25, 4}; int cnt = 0; for (int x=0; x < values.length; x++) { if (Math.round(values[x] + .5) == Math.ceil(values[x])) { ++cnt; } } System.out.println("same results " + cnt + " time(s)"); } }

A. same results 0 time(s)
B. same results 2 time(s)
C. same results 4 time(s)
D. Compilation fails.
Answer» C. same results 4 time(s)
31.

What will be the output of the program? public class ExamQuestion7 { static int j; static void methodA(int i) { boolean b; do { b = i<10 | methodB(4); /* Line 9 */ b = i<10 || methodB(8); /* Line 10 */ }while (!b); } static boolean methodB(int i) { j += i; return true; } public static void main(String[] args) { methodA(0); System.out.println( "j = " + j ); } }

A. j = 0
B. j = 4
C. j = 8
D. The code will run with no output
Answer» C. j = 8
32.

Which two statements are true about wrapper or String classes? If x and y refer to instances of different wrapper classes, then the fragment x.equals(y) will cause a compiler failure. If x and y refer to instances of different wrapper classes, then x == y can sometimes be true. If x and y are String references and if x.equals(y) is true, then x == y is true. If x, y, and z refer to instances of wrapper classes and x.equals(y) is true, and y.equals(z) is true, then z.equals(x) will always be true. If x and y are String references and x == y is true, then y.equals(x) will be true.

A. 1 and 2
B. 2 and 3
C. 3 and 4
D. 4 and 5
Answer» E.
33.

What will be the output of the program? public class BoolTest { public static void main(String [] args) { int result = 0; Boolean b1 = new Boolean("TRUE"); Boolean b2 = new Boolean("true"); Boolean b3 = new Boolean("tRuE"); Boolean b4 = new Boolean("false"); if (b1 == b2) /* Line 10 */ result = 1; if (b1.equals(b2) ) /* Line 12 */ result = result + 10; if (b2 == b4) /* Line 14 */ result = result + 100; if (b2.equals(b4) ) /* Line 16 */ result = result + 1000; if (b2.equals(b3) ) /* Line 18 */ result = result + 10000; System.out.println("result = " + result); } }

A. 0
B. 1
C. 10
D. 10010
Answer» E.
34.

public class Myfile { public static void main (String[] args) { String biz = args[1]; String baz = args[2]; String rip = args[3]; System.out.println("Arg is " + rip); } } Select how you would start the program to cause it to print: Arg is 2

A. java Myfile 222
B. java Myfile 1 2 2 3 4
C. java Myfile 1 3 2 2
D. java Myfile 0 1 2 3
Answer» D. java Myfile 0 1 2 3
35.

Which of the following are valid calls to Math.max? Math.max(1,4) Math.max(2.3, 5) Math.max(1, 3, 5, 7) Math.max(-1.5, -2.8f)

A. 1, 2 and 4
B. 2, 3 and 4
C. 1, 2 and 3
D. 3 and 4
Answer» B. 2, 3 and 4
36.

What will be the output of the program? String x = new String("xyz"); String y = "abc"; x = x + y; How many String objects have been created?

A. 2
B. 3
C. 4
D. 5
Answer» D. 5
37.

Which statement is true given the following? Double d = Math.random();

A. 0.0 < d <= 1.0
B. 0.0 <= d < 1.0
C. Compilation fail
D. Cannot say.
Answer» C. Compilation fail
38.

What is the value of "d" after this line of code has been executed? double d = Math.round ( 2.5 + Math.random() );

A. 2
B. 3
C. 4
D. 2.5
Answer» C. 4