Rudra Prasad Nayak
1
A.
B.
C.
D.
1 / 95
Java Programming (MCQ)
________ is the physical aspect of the computer that can be
seen.
Hardware
Software
Operating system
Application program
The correct answer is A
2
A.
B.
C.
D.
__________ is the brain of a computer.
Hardware
CPU
Memory
Disk
The correct answer is B
3
A.
B.
C.
D.
The speed of CPU is measured in __________.
megabytes
gigabytes
megahertz
gigahertz
The correct answer is CD
Explanation: 1 megahertz equals 1 million pulses per second
and 1 gigahertz is 1000 megahertz.
Why do computers use zeros and ones?
A. because combinations of zeros and ones can represent any
numbers and characters.
B. because digital devices have two stable states and it is
natural to use one state for 0 and the other for 1.
C. because binary numbers are simplest.
D. because binary numbers are the bases upon which all other
number systems are built.
The correct answer is B
One byte has ________ bits.
A. 4
B. 8
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
2 / 95
Java Programming (MCQ)
C. 12
D. 16
The correct answer is B
6
A.
B.
C.
D.
A 3.5-inch floppy can hold up to _________ bytes.
0.5 MB.
1.44 MB.
10 MB.
100 MB.
The correct answer is B
7
A.
B.
C.
D.
A regular CD-ROM can hold up to _________ bytes.
100 MB.
700 MB.
1 GB.
10 GB.
The correct answer is B
8
A.
B.
C.
D.
____________ is a device to connect a computer to a local
area network (LAN).
regular modem
DSL
Cable modem
NIC
The correct answer is D
9
A.
B.
C.
D.
____________ are instructions to the computer.
Hardware
Software
Programs
Keyboards
The correct answer is BC
10
Computer can execute the code in ____________.
A. machine language
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
3 / 95
Java Programming (MCQ)
B. assembly language
C. high-level language
D. none of the above
The correct answer is A
11
A.
B.
C.
D.
___________ translates high-level language program into
machine language program.
An assembler
A compiler
CPU
The operating system
The correct answer is B
12
A.
B.
C.
D.
E.
____________ is an operating system.
Java
C++
Windows XP
Visual Basic
Ada
The correct answer is C
13
A.
B.
C.
D.
E.
_____________ is a program that runs on a computer to
manage and control a computer's activities.
Operating system
Java
Modem
Interpreter
Compiler
The correct answer is A
14
A.
B.
C.
D.
E.
Decimal number 10 is binary number ____________.
10
2
1000
1100
1010
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
4 / 95
Java Programming (MCQ)
The correct answer is E
15
A.
B.
C.
D.
E.
Decimal number 20 is hexadecimal number ____________.
A
FF
F1
14
1F
The correct answer is D
16
A.
B.
C.
D.
E.
Binary number 1001 is decimal number ____________.
5
9
10
11
12
The correct answer is B
17
A.
B.
C.
D.
E.
Binary number 1001 is hexadecimal number ____________.
5
9
A
B
C
The correct answer is B
18
A.
B.
C.
D.
E.
Hexadecimal number A1 is decimal number ____________.
100
101
161
162
163
The correct answer is C
19
Hexadecimal number A1 is binary number ____________.
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
A.
B.
C.
D.
E.
5 / 95
Java Programming (MCQ)
10010100
10100001
01100001
11100001
11001001
The correct answer is B
20
A.
B.
C.
D.
E.
Java was developed by ____________.
Sun Microsystems
Microsoft
Oracle
IBM
Cisco Systems
The correct answer is A
21
A.
B.
C.
D.
Java ___________ can run from a Web browser.
applications
applets
servlets
Micro Edition programs
The correct answer is B
22
A.
B.
C.
D.
E.
________ is an object-oriented programming language.
Java
C++
C
Ada
Pascal
The correct answer is AB
23
A.
B.
C.
D.
E.
________ is interpreted.
Java
C++
C
Ada
Pascal
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
6 / 95
Java Programming (MCQ)
The correct answer is A
24
A.
B.
C.
D.
E.
________ is Architecture-Neutral.
Java
C++
C
Ada
Pascal
The correct answer is A
25
A.
B.
C.
D.
________ is a technical definition of the language that
includes the syntax and semantics of the Java programming
language.
Java
Java
Java
Java
language specification
API
JDK
IDE
The correct answer is A
26
A.
B.
C.
D.
________ contains predefined classes and interfaces for
developing Java programs.
Java
Java
Java
Java
language specification
API
JDK
IDE
The correct answer is B
27
A.
B.
C.
D.
________ consists of a set of separate programs for
developing and testing Java programs, each of which is
invoked from a command line.
Java language specification
Java API
Java JDK
Java IDE
The correct answer is C
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
28
A.
B.
C.
D.
7 / 95
Java Programming (MCQ)
________ provide an integrated development environment
(IDE) for rapidly developing Java programs. Editing,
compiling, building, debugging, and online help are
integrated in one graphical user interface.
Java
Java
Java
Java
language specification
API
JDK
IDE
The correct answer is D
29
A.
B.
C.
D.
E.
The main method header is written as:
public
public
public
public
public
static void main(string[] args)
static void Main(String[] args)
static void main(String[] args)
static main(String[] args)
void main(String[] args)
The correct answer is C
30
A.
B.
C.
D.
E.
System.out.println('Welcome to Java');
System.out.println("Welcome to Java");
System.println('Welcome to Java');
System.out.print('Welcome to Java');
System.out.print("Welcome to Java");
31
A.
B.
C.
D.
E.
Which of the following statements is correct to display
Welcome to Java on the console?
The correct answer is BE
Explanation: System.out.print("...") prints the string and
System.out.println("...") prints the string and moves the
cursor to the new line.
The JDK command to compile a class in the file Test.java
is
java Test
java Test.java
javac Test.java
javac Test
JAVAC Test.java
The correct answer is C
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
32
A.
B.
C.
D.
E.
8 / 95
Java Programming (MCQ)
Which JDK command is correct to run a Java application in
ByteCode.class?
java ByteCode
java ByteCode.class
javac ByteCode.java
javac ByteCode
JAVAC ByteCode
The correct answer is A
33
A.
B.
C.
D.
Java compiler translates Java source code into _________.
Java bytecode
machine code
assembly code
another high-level language code
The correct answer is A
34
A.
B.
C.
D.
_________ is a software that interprets Java bytecode.
Java
Java
Java
Java
virtual machine
compiler
debugger
API
The correct answer is A
35
Suppose you define a Java class as follows:
public class Test {
}
In order to compile this program, the source code should be
stored in a file named
A.
B.
C.
D.
E.
Test.class
Test.doc
Test.txt
Test.java
Any name with extension .java
The correct answer is D
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
36
A.
B.
C.
D.
9 / 95
Java Programming (MCQ)
The extension name of a Java bytecode file is
.java
.obj
.class
.exe
The correct answer is C
37
A.
B.
C.
D.
The extension name of a Java source code file is
.java
.obj
.class
.exe
The correct answer is A
38
A.
B.
C.
D.
E.
Which of the following lines is not a Java comment?
/** comments */
// comments
-- comments
/* comments */
** comments **
The correct answer is CE
39
A.
B.
C.
D.
Which of the following are the reserved words?
public
static
void
class
The correct answer is ABCD
40
A.
B.
C.
D.
Every statement in Java ends with ________.
a semicolon (;)
a comma (,)
a period (.)
an asterisk (*)
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
10 / 95
Java Programming
(MCQ)
The correct answer is A
41
A.
B.
C.
D.
A block is enclosed inside __________.
Parentheses
Braces
Brackets
Quotes
The correct answer is B
42 The __________ method displays a message dialog box.
A. JOptionPane.showMessage(null, "Welcome to Java!", "Example 1.2
Output", JOptionPane.INFORMATION_MESSAGE);
B. JOptionPane.displayMessage(null, "Welcome to Java!", "Example
1.2 Output", JOptionPane.INFORMATION_MESSAGE);
C. JOptionPane.displayMessageDialog(null, "Welcome to Java!",
"Example 1.2 Output", JOptionPane.INFORMATION_MESSAGE);
D. JOptionPane.showMessageDialog(null, "Welcome to Java!",
"Example 1.2 Output", JOptionPane.INFORMATION_MESSAGE);
E. JOptionPane.showMessageDialog(null, "Welcome to Java!");
The correct answer is DE
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
11 / 95
Java Programming
(MCQ)
Every letter in a Java keyword is in lowercase?
A. true
B. false
The correct answer is A
2
A.
B.
C.
D.
E.
Which of the following is a valid identifier?
$343
class
9X
8+9
radius
The correct answer is AE
3
A.
B.
C.
D.
E.
Which of the following are correct names for variables
according to Java naming conventions?
radius
Radius
RADIUS
findArea
FindArea
The correct answer is AD
4
A.
B.
C.
D.
Which of the following are correct ways to declare
variables?
int
int
int
int
length;
length,
length;
length,
int width;
width;
width;
int width;
The correct answer is AB
5
A.
B.
C.
D.
____________ is the Java assignment operator.
==
:=
=
=:
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
12 / 95
Java Programming
(MCQ)
The correct answer is C
6
A.
B.
C.
D.
E.
1
x
x
1
x
To assign a value 1 to variable x, you write
= x;
= 1;
:= 1;
:= x;
== 1;
The correct answer is B
7
A.
B.
C.
D.
i
i
i
i
Which of the following assignment statements is incorrect.
= j = k = 1;
= 1; j = 1; k = 1;
= 1 = j = 1 = k = 1;
== j == k == 1;
The correct answer is CD
8
A.
B.
C.
D.
To declare a constant MAX_LENGTH inside a method with value
99.98, you write
final MAX_LENGTH = 99.98;
final float MAX_LENGTH = 99.98;
double MAX_LENGTH = 99.98;
final double MAX_LENGTH = 99.98;
The correct answer is D
9
A.
B.
C.
D.
E.
Which of the following is a constant, according to Java
naming conventions?
MAX_VALUE
Test
read
ReadInt
COUNT
The correct answer is AE
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
13 / 95
Java Programming
(MCQ)
10
A.
B.
C.
D.
To improve readability and maintainability, you should
declare _________ instead of using literal values such as
3.14159.
variables
methods
constants
classes
The correct answer is C
11
A.
B.
C.
D.
Which of these data type requires the most amount of
memory?
long
int
short
byte
The correct answer is A
12
A.
B.
C.
D.
To declare an int variable number with initial value 2,
you write
int
int
int
int
number
number
number
number
=
=
=
=
2L;
2l;
2;
2.0;
The correct answer is C
13
A.
B.
C.
D.
What is the result of 45 / 4?
10
11
11.25
12
14
The correct answer is B
Explanation: 45 / 4 is an integer division, which results in
11
Which of the following expressions will yield 0.5?
A. 1 / 2
B. 1.0 / 2
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
14 / 95
Java Programming
(MCQ)
C. (double) (1 / 2)
D. (double) 1 / 2
E. 1 / 2.0
15
A.
B.
C.
D.
The correct answer is BDE
Explanation: 1 / 2 is an integer division, which results in
0.
Suppose m and r are integers. What is the correct Java
expression for m / r^2 to obtain a floating point result
value? (r^2 denotes r raised to the power of 2).
m /
m /
1.0
1.0
r * r
(r * r)
* m / r * r
* m / (r * r)
The correct answer is D
16
A.
B.
C.
D.
2 % 1
15 % 4
25 % 5
37 % 6
17
A.
B.
C.
D.
E.
Which of the following expression results in a value 1?
The correct answer is D
Explanation: 2 % 1 is 0, 15 % 4 is 3, 25 % 5 is 0, and 37 %
6 is 1
25 % 1 is _____
1
2
3
4
0
The correct answer is E
18
A.
B.
C.
D.
E.
-25 % 5 is _____
1
2
3
4
0
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
15 / 95
Java Programming
(MCQ)
The correct answer is E
19
A.
B.
C.
D.
E.
24 % 5 is _____
1
2
3
4
0
The correct answer is D
20
A.
B.
C.
D.
E.
-24 % 5 is _____
-1
-2
-3
-4
0
The correct answer is D
21
A.
B.
C.
D.
E.
-24 % -5 is _____
3
-3
4
-4
0
The correct answer is D
22
A.
B.
C.
D.
E.
1
x
x
x
x
To add a value 1 to variable x, you write
+ x = x;
+= 1;
:= 1;
= x + 1;
= 1 + x;
The correct answer is BDE
23
To add number to sum, you write (Note: Java is casesensitive)
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
16 / 95
Java Programming
(MCQ)
A.
B.
C.
D.
E.
number += sum;
number = sum + number;
sum = Number + sum;
sum += number;
sum = sum + number;
The correct answer is DE
24
Analyze the following code.
public class Test {
public static void main(String[] args) {
int month = 09;
System.out.println("month is " + month);
}
}
A.
B.
C.
D.
The program displays month is 09
The program displays month is 9
The program displays month is 9.0
The program has a syntax error, because 09 is an incorrect
literal value.
25
The correct answer is D
Explanation: Any numeric literal with the prefix 0 is an
octal value. But 9 is not an octal digit. An octal digit is
0, 1, 2, 3, 4, 5, 6, or 7.
what is y displayed in the following code?
public class Test1 {
public static void main(String[] args) {
int x = 1;
int y = x = x + 1;
System.out.println("y is " + y);
}
}
A. y is 0.
B. y is 1 because x is assigned to y first.
C. y is 2 because x + 1 is assigned to x and then x is assigned
to y.
D. The program has a syntax error since x is redeclared in the
statement int y = x = x + 1.
The correct answer is C
Explanation: The = operator is right-associative.
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
17 / 95
Java Programming
(MCQ)
26
What is i printed?
public class Test {
public static void main(String[] args) {
int j = 0;
int i = ++j + j * 5;
System.out.println("What is i? " + i);
}
}
A.
B.
C.
D.
0
1
5
6
27
The correct answer is D
Explanation: Operands are evaluated from left to right in
Java. The left-hand operand of a binary operator is
evaluated before any part of the right-hand operand is
evaluated. This rule takes precedence over any other rules
that govern expressions. Therefore, ++j is evaluated first,
and returns 1. Then j*5 is evaluated, returns 5.
What is i printed in the following code?
public class Test {
public static void main(String[] args) {
int j = 0;
int i = j++ + j * 5;
System.out.println("What is i? " + i);
}
}
A.
B.
C.
D.
0
1
5
6
28
The correct answer is C
Explanation: Same as before, except that j++ evaluates to 0.
what is y displayed in the following code?
public class Test {
public static void main(String[] args) {
int x = 1;
int y = x++ + x;
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
18 / 95
Java Programming
(MCQ)
System.out.println("y is " + y);
}
}
A.
B.
C.
D.
y
y
y
y
is
is
is
is
29
1.
2.
3.
4.
The correct answer is C
Explanation: When evaluating x++ + x, x++ is evaluated
first, which does two things: 1. returns 1 since it is postincrement. x becomes 2. Therefore y is 1 + 2.
What is y displayed?
public class Test {
public static void main(String[] args) {
int x = 1;
int y = x + x++;
System.out.println("y is " + y);
}
}
A.
B.
C.
D.
y
y
y
y
is
is
is
is
30
A.
B.
C.
D.
x
x
x
x
1.
2.
3.
4.
The correct answer is B
Explanation: When evaluating x + x++, x is evaluated first,
which is 1. X++ returns 1 since it is post-increment and 2.
Therefore y is 1 + 1.
To assign a double variable d to a float variable x, you
write
=
=
=
=
(long)d
(int)d;
d;
(float)d;
The correct answer is D
31
What is the printout of the following code:
double x = 5.5;
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
19 / 95
Java Programming
(MCQ)
int y = (int)x;
System.out.println("x is " + x + " and y is " + y);
A.
B.
C.
D.
E.
x
x
x
x
x
is
is
is
is
is
32
A.
B.
C.
D.
E.
5 and y
6.0 and
6 and y
5.5 and
5.5 and
is 6
y is 6.0
is 6
y is 5
y is 5.0
The correct answer is D
Explanation: The value is x is not changed after the
casting.
Which of the following assignment statements is illegal?
float
int t
short
int t
int t
f
=
s
=
=
= -34;
23;
= 10;
(int)false;
4.5;
The correct answer is DE
33
A.
B.
C.
D.
E.
What is the value of (double)5/2?
2;
2.5;
3;
2.0;
3.0;
The correct answer is B
34
A.
B.
C.
D.
E.
What is the value of (double)(5/2)?
2;
2.5;
3;
2.0;
3.0;
The correct answer is D
35
If you attempt to add an int, a byte, a long, and a
double, the result will be a __________ value.
A. byte
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
20 / 95
Java Programming
(MCQ)
B. int
C. long
D. double
The correct answer is D
36
A.
B.
C.
D.
4
"4"
'\0004'
'4'
37
A.
B.
C.
D.
The correct answer is D
Explanation: You have to write '4'.
A Java character is stored in __________.
one byte
two bytes
three bytes
four bytes
38
A.
B.
C.
D.
Which of the following is the correct expression of
character 4?
The correct answer is B
Explanation: Java characters use Unicode encoding.
Suppose x is a char variable with a value 'b'. What is the
printout of the statement System.out.println(++x)?
a
b
c
d
The correct answer is C
39
A.
B.
C.
D.
Which of the following statement prints
smith\exam1\test.txt?
System.out.println("smith\exam1\test.txt");
System.out.println("smith\\exam1\\test.txt");
System.out.println("smith\"exam1\"test.txt");
System.out.println("smith"\exam1"\test.txt");
The correct answer is B
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
21 / 95
Java Programming
(MCQ)
40
A.
B.
C.
D.
Suppose i is an int type variable. Which of the following
statements display the character whose Unicode is stored in
variable i?
System.out.println(i);
System.out.println((char)i);
System.out.println((int)i);
System.out.println(i + " ");
The correct answer is B
41
A.
B.
C.
D.
The Unicode of 'a' is 97. What is the Unicode for 'c'?
96
97
98
99
The correct answer is D
42
Will System.out.println((char)4) display 4?
A. Yes
B. No
43
A.
B.
C.
D.
The correct answer is B
Explanation: The Unicode \u0004 is to be displayed, not
number 4.
What is the printout of System.out.println('z' - 'a')?
25
26
a
z
The correct answer is A
44
A.
B.
C.
D.
E.
An int variable can hold __________.
'x'
120
120.0
"x"
"120"
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
22 / 95
Java Programming
(MCQ)
45
A.
B.
C.
D.
Which of the following assignment statements is correct?
char
char
char
char
46
A.
B.
C.
D.
E.
The correct answer is AB
Explanation: Choice (A) is also correct, because a character
can be implicitly cast into an int variable. The Unicode
value of character is assignment to the int variable. In
this case, the code is 120 (see Appendix B).
c
c
c
c
=
=
=
=
'd';
100;
"d";
"100";
The correct answer is AB
Explanation: Choice (B) is also correct, because an int
value can be implicitly cast into a char variable. The
Unicode of the character is the int value. In this case, the
character is d (see Appendix B).
The expression "Java " + 1 + 2 + 3 evaluates to ________.
Java123
Java6
Java 123
java 123
Illegal expression
The correct answer is C
47
A.
B.
C.
D.
Note that the Unicode for character A is 65. The
expression "A" + 1 evaluates to ________.
66
B
A1
Illegal expression
The correct answer is C
48
A.
B.
C.
D.
Note that the Unicode for character A is 65. The
expression 'A' + 1 evaluates to ________.
66
B
A1
Illegal expression
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
23 / 95
Java Programming
(MCQ)
The correct answer is A
49
The __________ method displays an input dialog for reading
a string.
A. String string = JOptionPane.showMessageDialog(null, "Enter a
string", "Input Demo", JOptionPane.QUESTION_MESSAGE);
B. String string = JOptionPane.showInputDialog(null, "Enter a
string", "Input Demo", JOptionPane.QUESTION_MESSAGE);
C. String string = JOptionPane.showInputDialog("Enter a string",
"Input Demo", JOptionPane.QUESTION_MESSAGE);
D. String string = JOptionPane.showInputDialog(null, "Enter a
string");
E. String string = JOptionPane.showInputDialog("Enter a string");
The correct answer is BDE
50
A.
B.
C.
D.
The __________ method parses a string s to an int value.
integer.parseInt(s);
Integer.parseInt(s);
integer.parseInteger(s);
Integer.parseInteger(s);
The correct answer is B
51
A.
B.
C.
D.
The __________ method parses a string s to a double value.
double.parseDouble(s);
Double.parsedouble(s);
double.parse(s);
Double.parseDouble(s);
The correct answer is D
52
Analyze the following code.
import javax.swing.*;
public class ShowErrors {
public static void main(String[] args) {
int i;
int j;
String s = JOptionPane.showInputDialog(null,
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
24 / 95
Java Programming
(MCQ)
"Enter an integer", "Input",
JOptionPane.QUESTION_MESSAGE);
j = Integer.parseInt(s);
i = (i + 4);
}
}
A. The program cannot compile because j is not initialized.
B. The program cannot compile because i does not have an initial
value when it is used in i = i + 4;
C. The program compiles but has a runtime error because i deos
not have an initial value when it is used in i = i + 4;
D. The program compiles and runs fine.
The correct answer is B
53
A.
B.
C.
D.
The __________ method returns a raised to the power of b.
Math.power(a, b)
Math.exponent(a, b)
Math.pow(a, b)
Math.pow(b, a)
The correct answer is C
54
A.
B.
C.
D.
76.02
76
76.0252175
76.03
55
A.
B.
C.
D.
The expression (int)(76.0252175 * 100) / 100 evaluates to
_________.
The correct answer is B
Explanation: In order to obtain 76.02, you have divide
100.0.
The System.currentTimeMills() returns ________________ .
the current
the current
the current
the current
1970.
E. the current
1970 GMT
time.
time in milliseconds.
time in milliseconds since midnight.
time in milliseconds since midnight, January 1,
time in milliseconds since midnight, January 1,
(the Unix time).
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
25 / 95
Java Programming
(MCQ)
The correct answer is E
56
A.
B.
C.
D.
Programming style is important, because ______________.
a program may not compile if it has a bad style
good programming style can make a program run faster
good programming style makes a program more readable
good programming style helps reduce programming errors
The correct answer is CD
57
A.
B.
C.
D.
E.
According to Java naming convention, which of the
following names can be variables?
FindArea
findArea
totalLength
TOTAL_LENGTH
class
The correct answer is BC
58
If a program compiles fine, but it produces incorrect
result, then the program suffers __________.
A. a compilation error
B. a runtime error
C. a logic error
The correct answer is C
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
26 / 95
Java Programming
(MCQ)
1
A.
B.
C.
D.
E.
The "less than or equal to" comparison operator in Java is
__________.
<
<=
=<
<<
!=
The correct answer is B
2
A.
B.
C.
D.
The equal comparison operator in Java is __________.
<>
!=
==
^=
The correct answer is C
3
A.
B.
C.
D.
a Java keyword
a Boolean literal
same as value 1
same as value 0
4
A.
B.
C.
D.
E.
In Java, the word true is ________.
The correct answer is B
Explanation: true is a Boolean literal just like integer
literal 10.
Which of the Boolean expressions below is incorrect?
(true) && (3 => 4)
!(x > 0) && (x > 0)
(x > 0) || (x < 0)
(x != 0) || (x = 0)
(-10 < x < 0)
The correct answer is ADE
Explanation: a: (3 => 4) should be (3 >= 4), d: (x = 0)
should be (x == 0), and e: should be (-10 < x) && (x < 0)
Which of the following is the correct expression that
evaluates to true if the number x is between 1 and 100 or
the number is negative?
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
27 / 95
Java Programming
(MCQ)
A.
B.
C.
D.
1 < x < 100 && x
((x < 100) && (x
((x < 100) && (x
(1 > x > 100) ||
< 0
> 1)) || (x < 0)
> 1)) && (x < 0)
(x < 0)
The correct answer is B
Suppose x=10 and y=10 what is x after evaluating the
expression (y > 10) & (x++ > 10).
A. 9
B. 10
C. 11
The correct answer is C
Explanation: For the & operator, both operands are
evaluated.
Suppose x=10 and y=10 what is x after evaluating the
expression (y >= 10) | (x++ > 10).
A. 9
B. 10
C. 11
The correct answer is C
Explanation: For the | operator, both operands are
evaluated.
Suppose x=10 and y=10 what is x after evaluating the
expression (y >= 10) || (x++ > 10).
A. 9
B. 10
C. 11
10
A.
B.
C.
D.
The correct answer is B
Explanation: For the || operator, the right operand is not
evaluated, if the left operand is evaluated as true.
_______ is the code with natural language mixed with Java
code.
Java program
A Java statement
Pseudocode
A flowchart diagram
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
28 / 95
Java Programming
(MCQ)
The correct answer is C
11
Which of the following code displays the area of a circle
if the radius is positive.
A. if (radius != 0) System.out.println(radius * radius *
Math.PI);
B. if (radius >= 0) System.out.println(radius * radius *
Math.PI);
C. if (radius > 0) System.out.println(radius * radius * Math.PI);
D. if (radius <= 0) System.out.println(radius * radius *
Math.PI);
The correct answer is C
12
Analyze the following code:
if (x < 100) & (x > 10)
System.out.println("x is between 10 and 100");
A. The statement has syntax errors because (x<100) & (x > 10)
must be enclosed inside parentheses.
B. The statement has syntax errors because (x<100) & (x > 10)
must be enclosed inside parentheses and the println(?)
statement must be put inside a block.
C. The statement compiles fine.
D. The statement compiles fine, but has a runtime error.
E. & should be replaced by && to avoid having a syntax error.
The correct answer is A
13
Suppose x = 1, y = -1, and z = 1. What is the printout of
the following statement? (Please indent the statement
correctly first.)
if (x > 0)
if (y > 0)
System.out.println("x > 0 and y > 0");
else if (z > 0)
System.out.println("x < 0 and z > 0");
A.
B.
C.
D.
x > 0 and y > 0;
x < 0 and z > 0;
x < 0 and z < 0;
no printout.
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
29 / 95
Java Programming
(MCQ)
The correct answer is B
14
Analyze the following code:
boolean even = false;
if (even = true) {
System.out.println("It is even!");
}
A.
B.
C.
D.
The
The
The
The
15
program
program
program
program
has a syntax error.
has a runtime error.
runs fine, but displays nothing.
runs fine and displays It is even!.
The correct answer is D
Explanation: It is a common mistake to use the = operator in
the condition test. What happens is that true is assigned to
even when you write even = true. So even is true. The
program compiles and runs fine and prints "It is even!".
Please see the Caution box in Section 3.2.3.
Analyze the following code:
Code 1:
boolean even;
if (number % 2 == 0)
even = true;
else
even = false;
Code 2:
boolean even = (number % 2 == 0);
A.
B.
C.
D.
Code
Code
Both
Both
16
1 has syntax errors.
2 has syntax errors.
Code 1 and Code 2 have syntax errors.
Code 1 and Code 2 are correct, but Code 2 is better.
The correct answer is D
Explanation: Please see the Tip box in Section 3.2.3.
Suppose income is 4001, what is the output of the
following code:
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
30 / 95
Java Programming
(MCQ)
if (income > 3000) {
System.out.println("Income is greater than 3000");
}
else if (income > 4000) {
System.out.println("Income is greater than 4000");
A. no output
B. Income is
C. Income is
4000
D. Income is
E. Income is
3000
greater than 3000
greater than 3000 followed by Income is greater than
greater than 4000
greater than 4000 followed by Income is greater than
The correct answer is B
17
A.
B.
C.
D.
The __________ method immediately terminates the program.
System.terminate(0);
System.halt(0);
System.exit(0);
System.stop(0);
The correct answer is C
18
What is y after the following switch statement is
executed?
x = 3;
switch (x + 3) {
case 6: y = 0;
case 7: y = 1;
default: y += 1;
}
A.
B.
C.
D.
1
2
3
4
The correct answer is B
19
What is the printout of the following switch statement?
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
31 / 95
Java Programming
(MCQ)
char ch = 'a';
switch (ch) {
case 'a':
case 'A':
System.out.print(ch); break;
case 'b':
case 'B':
System.out.print(ch); break;
case 'c':
case 'C':
System.out.print(ch); break;
case 'd':
case 'D':
System.out.print(ch);
}
A.
B.
C.
D.
E.
abcd
a
aa
ab
abc
The correct answer is B
20
What is the printout of the following switch statement?
char ch = 'b';
switch (ch) {
case 'a':
System.out.print(ch);
case 'b':
System.out.print(ch);
case 'c':
System.out.print(ch);
case 'd':
System.out.print(ch);
}
A.
B.
C.
D.
E.
abcd
bcd
b
bb
bbb
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
32 / 95
Java Programming
(MCQ)
The correct answer is E
21
Analyze the following program fragment:
int x;
double d = 1.5;
switch (d) {
case 1.0: x = 1;
case 1.5: x = 2;
case 2.0: x = 3;
}
A. The program has a syntax error because the required break
statement is missing in the switch statement.
B. The program has a syntax error because the required default
case is missing in the switch statement.
C. The switch control variable cannot be double.
D. No errors.
The correct answer is C
22
What is y after the following statement is executed?
x = 0;
y = (x > 0) ? 10 : -10;
A.
B.
C.
D.
E.
-10
0
10
20
Illegal expression
The correct answer is A
23
Analyze the following code fragments that assign a boolean
value to the variable even.
Code 1:
if (number % 2 == 0)
even = true;
else
even = false;
Code 2:
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
33 / 95
Java Programming
(MCQ)
even = (number % 2 == 0) ? true: false;
Code 3:
even = number % 2 == 0;
A. Code 2 has a syntax error, because you cannot have true and
false literals in the conditional expression.
B. Code 3 has a syntax error, because you attempt to assign
number to even.
C. All three are correct, but Code 1 is preferred.
D. All three are correct, but Code 2 is preferred.
E. All three are correct, but Code 3 is preferred.
24
A.
B.
C.
D.
E.
The correct answer is E
Explanation: Code 3 is the simplest. Code 1 and Code 2
contain redundant code.
Which of the following are valid specifiers for the printf
statement?
%4c
%10b
%6d
%8.2d
%10.2e
The correct answer is ABCE
25
A.
B.
C.
D.
E.
The statement System.out.printf("%3.1f", 1234.56) outputs
___________.
123.4
123.5
1234.5
1234.56
1234.6
The correct answer is E
26
A.
B.
C.
D.
E.
The statement System.out.printf("%3.1e", 1234.56) outputs
___________.
0.1e+04
0.123456e+04
0.123e+04
1.2e+03
1.23+03
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
34 / 95
Java Programming
(MCQ)
The correct answer is D
27
A.
B.
C.
D.
The statement System.out.printf("%5d", 123456) outputs
___________.
12345
23456
123456
12345.6
The correct answer is C
28
A.
B.
C.
D.
The statement System.out.printf("%10s", 123456) outputs
___________. (Note: * represents a space)
123456****
23456*****
12345*****
****123456
The correct answer is D
29
A.
B.
C.
D.
E.
The order of the precedence (from high to low) of the
operators +, *, &&, ||, & is:
&&, ||, &, *, +
*, +, &&, ||, &
*, +, &, &&, ||
*, +, &, ||, &&
&, ||, &&, *, +
The correct answer is C
30
A.
B.
C.
D.
E.
Which of the following operators are right-associative.
*
+
%
&&
=
The correct answer is E
31
Which of the following operators are left-associative.
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
35 / 95
Java Programming
(MCQ)
A.
B.
C.
D.
E.
*
+
%
&&
=
The correct answer is E
32
What is the value of the following expression?
true | true && false
A. true
B. false
34
The correct answer is B
Explanation: | has higher precedence than &&, so | is
evaluated first.
What is the value of the following expression?
true | true & false
A. true
B. false
The correct answer is A
Explanation: & has higher precedence than |, so & is
evaluated first.
35 What is 1.0 + 1.0 + 1.0 + 1.0 + 1.0 == 5.0?
A. true
B. false
C. There is no guarantee that 1.0 + 1.0 + 1.0 + 1.0 + 1.0 == 5.0
is true.
The correct answer is C
How many times will the following code print "Welcome to
Java"?
int count = 0;
while (count < 10) {
System.out.println("Welcome to Java");
count++;
}
A. 8
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
36 / 95
Java Programming
(MCQ)
B.
C.
D.
E.
9
10
11
0
The correct answer is C
How many times will the following code print "Welcome to
Java"?
int count = 0;
while (count++ < 10) {
System.out.println("Welcome to Java");
}
A.
B.
C.
D.
E.
8
9
10
11
0
The correct answer is C
Analyze the following code.
int count = 0;
while (count < 100) {
// Point A
System.out.println("Welcome to Java!");
count++;
// Point B
}
// Point C
A.
B.
C.
D.
E.
count
count
count
count
count
<
<
<
<
<
100
100
100
100
100
is
is
is
is
is
always
always
always
always
always
true at Point A
true at Point B
false at Point B
true at Point C
false at Point C
The correct answer is AE
How many times will the following code print "Welcome to
Java"?
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
37 / 95
Java Programming
(MCQ)
int count = 0;
do {
System.out.println("Welcome to Java");
count++;
} while (count < 10);
A.
B.
C.
D.
E.
8
9
10
11
0
The correct answer is C
How many times will the following code print "Welcome to
Java"?
int count = 0;
do {
System.out.println("Welcome to Java");
} while (count++ < 10);
A.
B.
C.
D.
E.
8
9
10
11
0
The correct answer is D
How many times will the following code print "Welcome to
Java"?
int count = 0;
do {
System.out.println("Welcome to Java");
} while (++count < 10);
A.
B.
C.
D.
E.
8
9
10
11
0
The correct answer is C
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
38 / 95
Java Programming
(MCQ)
What is the value in count after the following loop is
executed?
int count = 0;
do {
System.out.println("Welcome to Java");
} while (count++ < 9);
System.out.println(count);
A.
B.
C.
D.
E.
8
9
10
11
0
The correct answer is C
Analyze the following statement:
double sum = 0;
for (double d = 0; d<10;) {
d += 0.1;
sum += sum + d;
}
A. The program has a syntax error because the adjustment is
missing in the for loop.
B. The program has a syntax error because the control variable in
the for loop cannot be of the double type.
C. The program runs in an infinite loop because d<10 would always
be true.
D. The program compiles and runs fine.
The correct answer is D
Do the following two statements result in the same value in
sum?
for (int i = 0; i<10; ++i) {
sum += i;
}
for (int i = 0; i<10; i++) {
sum += i;
}
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
39 / 95
Java Programming
(MCQ)
A. Yes
B. No
The correct answer is A
10
What is the output for y?
int y = 0;
for (int i = 0; i<10; ++i) {
y += i;
}
System.out.println(y);
A.
B.
C.
D.
E.
10
11
12
13
45
11
The correct answer is E
Explanation: y should be 0 + 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 +
9 = 45
What is i after the following for loop?
int y = 0;
for (int i = 0; i<10; ++i) {
y += i;
}
A.
B.
C.
D.
9
10
11
undefined
12
The correct answer is D
Explanation: The scope of i is inside the loop. After the
loop, i is not defined.
Is the following loop correct?
for (; ; );
A. Yes
B. No
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
40 / 95
Java Programming
(MCQ)
The correct answer is A
13
Analyze the following fragment:
double sum = 0;
double d = 0;
while (d != 10.0) {
d += 0.1;
sum += sum + d;
}
A. The program does not compile because sum and d are declared
double, but assigned with integer value 0.
B. The program never stops because d is always 0.1 inside the
loop.
C. The program may not stop because of the phenomenon referred to
as numerical inaccuracy for operating with floating-point
numbers.
D. After the loop, sum is 0 + 0.1 + 0.2 + 0.3 + ... + 1.9
The correct answer is C
14
Analyze the following code:
public class Test {
public static void main (String args[]) {
int i = 0;
for (i = 0; i < 10; i++);
System.out.println(i + 4);
}
}
A. The program has a syntax error because of the semicolon (;) on
the for loop line.
B. The program compiles despite the semicolon (;) on the for loop
line, and displays 4.
C. The program compiles despite the semicolon (;) on the for loop
line, and displays 14.
D. The for loop in this program is same as for (i = 0; i < 10; i+
+) { }; System.out.println(i + 4);
The correct answer is CD
Explanation: This is a logic error. System.out.println(i +
4) is not a part the for loop because the for loop ends with
the last semicolon at for (i=0; i<10; i++);
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
41 / 95
Java Programming
(MCQ)
15
Will the following program terminate?
int balance = 10;
while (true) {
if (balance < 9) break;
balance = balance - 9;
}
A. Yes
B. No
The correct answer is A
16
What is sum after the following loop terminates?
int sum = 0;
int item = 0;
do {
item++;
sum += item;
if (sum > 4) break;
}
while (item < 5);
A.
B.
C.
D.
5
6
7
8
The correct answer is B
17
What is sum after the following loop terminates?
int sum = 0;
int item = 0;
do {
item++;
sum += item;
if (sum >= 4) continue;
}
while (item < 5);
A. 15
B. 16
C. 17
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
42 / 95
Java Programming
(MCQ)
D. 18
The correct answer is A
18
Will the following program terminate?
int balance = 10;
while (true) {
if (balance < 9) continue;
balance = balance - 9;
}
A. Yes
B. No
The correct answer is B
19
After the break outer statement is executed in the
following loop, which statement is executed?
outer:
for (int i = 1; i < 10; i++) {
inner:
for (int j = 1; j < 10; j++) {
if (i * j > 50)
break outer;
System.out.println(i * j);
}
}
next:
A.
B.
C.
D.
The
The
The
The
statement labeled inner.
statement labeled outer.
statement labeled next.
program terminates.
The correct answer is C
20
After the continue outer statement is executed in the
following loop, which statement is executed?
outer:
for (int i = 1; i < 10; i++) {
inner:
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
43 / 95
Java Programming
(MCQ)
for (int j = 1; j < 10; j++) {
if (i * j > 50)
continue outer;
System.out.println(i * j);
}
}
next:
A. The control is in the outer loop, and the next iteration of
the outer loop is executed.
B. The control is in the inner loop, and the next iteration of
the inner loop is executed.
C. The statement labeled next.
D. The program terminates.
The correct answer is A
21
What is the number of iterations in the following loop:
for (int i = 1; i < n; i++) {
// iteration
}
A.
B.
C.
D.
2*n
n
n - 1
n + 1
The correct answer is C
22
What is the number of iterations in the following loop:
for (int i = 1; i <= n; i++) {
// iteration
}
A.
B.
C.
D.
2*n
n
n - 1
n + 1
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
44 / 95
Java Programming
(MCQ)
The correct answer is B
1
A.
B.
C.
D.
What is the representation of the third element in an array
called a?
a[2]
a(2)
a[3]
a(3)
The correct answer is A
2
A.
B.
C.
D.
E.
Which of the following is incorrect?
int[] a
int a[]
int[] a
int a =
int a()
= new int[2];
= new int[2];
= new int(2);
new int[2];
= new int[2];
The correct answer is CDE
3
A.
B.
C.
D.
E.
What is the correct term for numbers[99]?
index
index variable
indexed variable
array variable
array
The correct answer is C
4
A.
B.
C.
D.
E.
Suppose int i = 5, which of the following can be used as an
index for array double[] t = new double[100]?
i
(int)(Math.random() * 100))
i + 10
i + 6.5
Math.random() * 100
The correct answer is ABC
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
45 / 95
Java Programming
(MCQ)
Analyze the following code.
public class Test {
public static void main(String[] args) {
int[] x = new int[3];
System.out.println("x[0] is " + x[0]);
}
}
A. The program has a syntax error because the size of the array
wasn't specified when declaring the array.
B. The program has a runtime error because the array elements are
not initialized.
C. The program runs fine and displays x[0] is 0.
D. The program has a runtime error because the array element x[0]
is not defined.
The correct answer is C
6
A.
B.
C.
D.
E.
int i = new int(30);
double d[] = new double[30];
int[] i = {3, 4, 3, 2};
char[] c = new char();
char[] c = new char[4]{'a', 'b', 'c', 'd'};
7
A.
B.
C.
D.
Which of the following statements is valid?
The correct answer is BC
Explanation: e would be corrected if it is char[] c = new
char[]{'a', 'b', 'c', 'd'};
How can you initialize an array of two characters to 'a' and
'b'?
char[] charArray = new char[2]; charArray = {'a', 'b'};
char[2] charArray = {'a', 'b'};
char[] charArray = {'a', 'b'};
char[] charArray = new char[]{'a', 'b'};
The correct answer is CD
What would be the result of attempting to compile and run
the following code?
public class Test {
public static void main(String[] args) {
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
46 / 95
Java Programming
(MCQ)
double[] x = new double[]{1, 2, 3};
System.out.println("Value is " + x[1]);
}
}
A. The program has a syntax error because
{1, 2, 3} is wrong and it should be
B. The program has a syntax error because
{1, 2, 3} is wrong and it should be
double[3]{1, 2, 3};
C. The program has a syntax error because
{1, 2, 3} is wrong and it should be
{1.0, 2.0, 3.0};
D. The program compiles and runs fine and
1.0" is printed.
E. The program compiles and runs fine and
2.0" is printed.
9
A.
B.
C.
D.
the syntax new double[]
replaced by {1, 2, 3}.
the syntax new double[]
replaced by new
the syntax new double[]
replaced by new double[]
the output "Value is
the output "Value is
The correct answer is E
Explanation: new double[]{1, 2, 3} is correct. This is the
syntax I have not covered in this edition, but will be
covered in the future edition. In this question, double[] x
= new double[]{1, 2, 3} is equivalent to double[] x = {1, 2,
3};
Assume int[] t = {1, 2, 3, 4}. What is t.length?
0
3
4
5
The correct answer is C
10
Analyze the following code:
public class Test {
public static void main(String[] args) {
int[] x = new int[5];
int i;
for (i = 0; i < x.length; i++)
x[i] = i;
System.out.println(x[i]);
}
}
A. The program displays 0 1 2 3 4.
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
47 / 95
Java Programming
(MCQ)
B. The program displays 4.
C. The program has a runtime error because the last statement in
the main method causes ArrayIndexOutOfBoundsException.
D. The program has syntax error because i is not defined in the
last statement in the main method.
11
The correct answer is C
Explanation: After the for loop i is 6. x[5] is out of
bounds.
(Tricky) What is output of the following code:
public class Test {
public static void main(String[] args) {
int[] x = {120, 200, 016};
for (int i = 0; i < x.length; i++)
System.out.print(x[i] + " ");
}
}
A.
B.
C.
D.
120
120
120
016
13
200 16
200 14
200 20
is a syntax error. It should be written as 16.
The correct answer is B
Explanation: 016 is an octal number. The prefix 0 indicates
that a number is in octal.
In the following code, what is the printout for list1?
class Test {
public static void main(String[] args) {
int[] list1 = {1, 2, 3};
int[] list2 = {1, 2, 3};
list2 = list1;
list1[0] = 0; list1[1] = 1; list2[2] = 2;
for (int i = 0; i < list1.length; i++)
System.out.print(list1[i] + " ");
}
}
A.
B.
C.
D.
1
1
0
0
2
1
1
1
3
1
2
3
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
48 / 95
Java Programming
(MCQ)
The correct answer is C
14
Analyze the following code:
public class Test {
public static void main(String[] args) {
int[] x = {1, 2, 3, 4};
int[] y = x;
x = new int[2];
for (int i = 0; i < y.length; i++)
System.out.print(y[i] + " ");
}
}
A.
B.
C.
D.
The
The
The
The
program
program
program
program
displays
displays
displays
displays
1
0
0
0
2 3 4
0
0 3 4
0 0 0
The correct answer is A
15
Analyze the following code:
public class Test {
public static void main(String[] args) {
int[] x = {1, 2, 3, 4};
int[] y = x;
x = new int[2];
for (int i = 0; i < x.length; i++)
System.out.print(x[i] + " ");
}
}
A.
B.
C.
D.
The
The
The
The
program
program
program
program
displays
displays
displays
displays
1
0
0
0
2 3 4
0
0 3 4
0 0 0
The correct answer is B
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
49 / 95
Java Programming
(MCQ)
16
Analyze the following code:
public class Test {
public static void main(String[] args) {
final int[] x = {1, 2, 3, 4};
int[] y = x;
x = new int[2];
for (int i = 0; i < y.length; i++)
System.out.print(y[i] + " ");
}
}
A. The program displays 1 2 3 4
B. The program displays 0 0
C. The program has a syntax error on the statement x = new
int[2], because x is final and cannot be changed.
D. The elements in the array x cannot be changed, because x is
final.
17
The correct answer is C
Explanation: The value stored in x is final, but the values
in the array are not final.
Analyze the following code:
public class Test {
public static void main(String[] args) {
int[] x = {1, 2, 3, 4};
int[] y = x;
x = new int[2];
for (int i = 0; i < x.length; i++)
System.out.print(x[i] + " ");
}
}
A.
B.
C.
D.
The
The
The
The
program
program
program
program
displays
displays
displays
displays
1
0
0
0
2 3 4
0
0 3 4
0 0 0
The correct answer is B
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
50 / 95
Java Programming
(MCQ)
18
Analyze the following code.
int[] list = new int[5];
list = new int[6];
A. The code has syntax errors because the variable list cannot be
changed once it is assigned.
B. The code has runtime errors because the variable list cannot
be changed once it is assigned.
C. The code can compile and run fine. The second line assigns a
new array to list.
D. The code has syntax errors because you cannot assign a
different size array to list.
The correct answer is C
19
Analyze the following code:
public class Test {
public static void main(String[] args) {
int[] a = new int[4];
a[1] = 1;
a = new int[2];
System.out.println("a[1] is " + a[1]);
}
}
A. The program has a syntax error because new int[2] is assigned
to a.
B. The program has a runtime error because a[1] is not
initialized.
C. The program displays a[1] is 0.
D. The program displays a[1] is 1.
20
The correct answer is C
Explanation: After executing the statement a = new int[2], a
refers to int[2]. The default value for a[0] and a[1] is 0.
The __________ method copies the sourceArray to the
targetArray.
A. System.copyArrays(sourceArray, 0, targetArray, 0,
sourceArray.length);
B. System.copyarrays(sourceArray, 0, targetArray, 0,
sourceArray.length);
C. System.arrayCopy(sourceArray, 0, targetArray, 0,
sourceArray.length);
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
51 / 95
Java Programming
(MCQ)
D. System.arraycopy(sourceArray, 0, targetArray, 0,
sourceArray.length);
The correct answer is D
21
A.
B.
C.
D.
When you pass an array to a method, the method receives
__________.
a copy of the
a copy of the
the reference
the length of
array
first element
of the array
the array
The correct answer is C
22
Show the output of the following code:
public class Test {
public static void main(String[] args) {
int[] x = {1, 2, 3, 4, 5};
increase(x);
int[] y = {1, 2, 3, 4, 5};
increase(y[0]);
System.out.println(x[0] + " " + y[0]);
}
public static void increase(int[] x) {
for (int i = 0; i < x.length; i++)
x[i]++;
}
public static void increase(int y) {
y++;
}
}
A.
B.
C.
D.
E.
0
1
2
2
1
0
1
2
1
2
The correct answer is D
Explanation: Invoking increase(x) passes the reference of
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
52 / 95
Java Programming
(MCQ)
23
the array to the method. Invoking increase(y[0]) passes the
value 1 to the method. The value y[0] outside the method is
not changed.
Do the following two programs produce the same result?
Program I:
public class Test {
public static void main(String[] args) {
int[] list = {1, 2, 3, 4, 5};
reverse(list);
for (int i = 0; i < list.length; i++)
System.out.print(list[i] + " ");
}
public static void reverse(int[] list) {
int[] newList = new int[list.length];
for (int i = 0; i < list.length; i++)
newList[i] = list[list.length - 1 - i];
list = newList;
}
}
Program II:
public class Test {
public static void main(String[] args) {
int[] oldList = {1, 2, 3, 4, 5};
reverse(oldList);
for (int i = 0; i < oldList.length; i++)
System.out.print(oldList[i] + " ");
}
public static void reverse(int[] list) {
int[] newList = new int[list.length];
for (int i = 0; i < list.length; i++)
newList[i] = list[list.length - 1 - i];
list = newList;
}
}
A. true
B. false
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
53 / 95
Java Programming
(MCQ)
The correct answer is A
24
Analyze the following code:
public class Test {
public static void main(String[] args) {
int[] oldList = {1, 2, 3, 4, 5};
reverse(oldList);
for (int i = 0; i < oldList.length; i++)
System.out.print(oldList[i] + " ");
}
public static void reverse(int[] list) {
int[] newList = new int[list.length];
for (int i = 0; i < list.length; i++)
newList[i] = list[list.length - 1 - i];
list = newList;
}
}
A. The program displays 1 2 3 4 5.
B. The program displays 1 2 3 4 5 and then raises an
ArrayIndexOutOfBoundsException.
C. The program displays 5 4 3 2 1.
D. The program displays 5 4 3 2 1 and then raises an
ArrayIndexOutOfBoundsException.
25
The correct answer is A
Explanation: The contents of the array oldList have not been
changed as result of invoking the reverse method.
Analyze the following code:
public class Test1 {
public static void main(String[] args) {
xMethod(new double[]{3, 3});
xMethod(new double[5]);
xMethod(new double[3]{1, 2, 3});
}
public static void xMethod(double[] a) {
System.out.println(a.length);
}
}
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
54 / 95
Java Programming
(MCQ)
A. The program has a syntax error because xMethod(new double[]{3,
3}) is incorrect.
B. The program has a syntax error because xMethod(new double[5])
is incorrect.
C. The program has a syntax error because xMethod(new double[3]
{1, 2, 3}) is incorrect.
D. The program has a runtime error because a in null.
26
A.
B.
C.
D.
The correct answer is C
Explanation: new double[3]{1, 2, 3} should be replaced by
new double[]{1, 2, 3}) (anonymous array).
The JVM stores the array in an area of memory, called
_______, which is used for dynamic memory allocation where
blocks of memory are allocated and freed in an arbitrary
order.
stack
heap
memory block
dynamic memory
The correct answer is B
28
Suppose a method p has the following heading:
public static int[] p()
What return statement may be used in p()?
A.
B.
C.
D.
return
return
return
return
1;
{1, 2, 3};
int[]{1, 2, 3};
new int[]{1, 2, 3};
The correct answer is D
29
The reverse method is defined in the textbook. What is
list1 after executing the following statements?
int[] list1 = {1, 2, 3, 4, 5, 6};
list1 = reverse(list1);
A. list1 is 1 2 3 4 5 6
B. list1 is 6 5 4 3 2 1
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
55 / 95
Java Programming
(MCQ)
C. list1 is 0 0 0 0 0 0
D. list1 is 6 6 6 6 6 6
The correct answer is B
30
The reverse method is defined in this section. What is
list1 after executing the following statements?
int[] list1 = {1, 2, 3, 4, 5, 6};
int[] list2 = reverse(list1);
A.
B.
C.
D.
list1
list1
list1
list1
is
is
is
is
1
6
0
6
2
5
0
6
3
4
0
6
4
3
0
6
5
2
0
6
6
1
0
6
The correct answer is A
31
A.
B.
C.
D.
E.
public
public
public
public
public
32
A.
B.
C.
D.
Which of the following declarations are correct?
static
static
static
static
static
void print(String... strings, double... numbers)
void print(double... numbers, String name)
double... print(double d1, double d2)
void print(double... numbers)
void print(int n, double... numbers)
The correct answer is
Explanation: Only one
specified in a method
parameter. The method
length parameter.
DE
variable-length parameter may be
and this parameter must be the last
return type cannot be a variable-
Which of the following statements are correct to invoke
the printMax method in Listing 6.5 in the book?
printMax(1, 2, 2, 1, 4);
printMax(new double[]{1, 2, 3});
printMax(1.0, 2.0, 2.0, 1.0, 4.0);
printMax(new int[]{1, 2, 3});
The correct answer is ABC
Explanation: The last one printMax(new int[]{1, 2, 3}); is
incorrect, because the array must of the double[] type.
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
56 / 95
Java Programming
(MCQ)
33
A.
B.
C.
D.
E.
For the binarySearch method in Section 6.7.2, what is low
and high after the first iteration of the while loop when
invoking binarySearch(new int[]{1, 4, 6, 8, 10, 15, 20},
11)?
low
low
low
low
low
is
is
is
is
is
0
0
3
4
0
and
and
and
and
and
high
high
high
high
high
is
is
is
is
is
6
3
6
6
5
The correct answer is D
34
A.
B.
C.
D.
If a key is not in the list, the binarySearch method
returns _________.
insertion point
insertion point - 1
-insertion point - 1
-insertion point
The correct answer is C
35
A.
B.
C.
D.
The selectionSort method is defined in this section.
Assume list is {3.1, 3.1, 2.5, 6.4, 2.1}, what is the
content of list after the first iteration of the outer loop
in the method?
3.1,
2.5,
2.1,
3.1,
3.1,
3.1,
2.5,
3.1,
2.5,
3.1,
3.1,
2.5,
6.4,
6.4,
3.1,
2.1,
2.1
2.1
6.4
6.4
The correct answer is D
36
The selectionSort method is defined in this section. What
is list1 after executing the following statements?
double[] list1 = {3.1, 3.1, 2.5, 6.4};
selectionSort(list1);
A. list1 is 3.1, 3.1, 2.5, 6.4
B. list1 is 2.5 3.1, 3.1, 6.4
C. list1 is 6.4, 3.1, 3.1, 2.5
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
57 / 95
Java Programming
(MCQ)
D. list1 is 3.1, 2.5, 3.1, 6.4
The correct answer is B
37
A.
B.
C.
D.
The __________ method sorts the array scores of the
double[] type.
java.util.Arrays(scores)
java.util.Arrays.sorts(scores)
java.util.Arrays.sort(scores)
Njava.util.Arrays.sortArray(scores)
The correct answer is C
38
A.
B.
C.
D.
E.
Assume int[] scores = {1, 20, 30, 40, 50}, what value does
java.util.Arrays.binarySearch(scores, 30) return?
0
-1
1
2
-2
The correct answer is D
39
A.
B.
C.
D.
E.
Assume int[] scores = {1, 20, 30, 40, 50}, what value does
java.util.Arrays.binarySearch(scores, 3) return?
0
-1
1
2
-2
40
The correct answer is E
Explanation: The binarySearch method returns the index of
the search key if it is contained in the list. Otherwise, it
returns ?insertion point - 1. The insertion point is the
point at which the key would be inserted into the list. In
this case the insertion point is 1. Note that the array
index starts from 0.
Which of the following statements are correct?
A. char[][] charArray = {'a', 'b'};
B. char[2][2] charArray = {{'a', 'b'}, {'c', 'd'}};
C. char[2][] charArray = {{'a', 'b'}, {'c', 'd'}};
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
58 / 95
Java Programming
(MCQ)
D. char[][] charArray = {{'a', 'b'}, {'c', 'd'}};
The correct answer is D
41
A.
B.
C.
D.
4
4
5
5
Assume double[][] x = new double[4][5], what are x.length
and x[2].length?
and
and
and
and
4
5
4
5
The correct answer is B
42
Analyze the following code:
public class Test {
public static void main(String[] args) {
boolean[][] x = new boolean[3][];
x[0] = new boolean[1]; x[1] = new boolean[2];
x[2] = new boolean[3];
System.out.println("x[2][2] is " + x[2][2]);
}
}
A. The program
wrong.
B. The program
C. The program
D. The program
E. The program
has a syntax error because new boolean[3][] is
has a runtime error because x[2][2] is null.
runs and displays x[2][2] is null.
runs and displays x[2][2] is true.
runs and displays x[2][2] is false.
The correct answer is E
Explanation: x is a ragged array. (See the section on Ragged
Array) x[2] has three elements with default value false.
43
Suppose a method p has the following heading:
public static int[][] p()
What return statement may be used in p()?
A. return 1;
B. return {1, 2, 3};
C. return int[]{1, 2, 3};
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
59 / 95
Java Programming
(MCQ)
D. return new int[]{1, 2, 3};
E. return new int[][]{{1, 2, 3}, {2, 4, 5}};
The correct answer is E
44
A.
B.
C.
D.
4,
6,
5,
4,
Assume double[][][] x = new double[4][5][6], what are
x.length, x[2].length, and x[0][0].length?
5,
5,
5,
5,
and
and
and
and
6
4
5
4
The correct answer is A
45
A.
B.
C.
D.
Which of the following statements are correct?
char[][][] charArray = new char[2][2][];
char[2][2][] charArray = {'a', 'b'};
char[][][] charArray = {{'a', 'b'}, {'c', 'd'}, {'e', 'f'}};
char[][][] charArray = {{{'a', 'b'}, {'c', 'd'}, {'e', 'f'}}};
The correct answer is AD
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
60 / 95
Java Programming
(MCQ)
1
A.
B.
C.
D.
__________ represents an entity in the real world that can
be distinctly identified.
A class
An object
A method
A data field
The correct answer is B
2
A.
B.
C.
D.
_______ is a construct that defines objects of the same
type.
A class
An object
A method
A data field
The correct answer is A
3
A.
B.
C.
D.
An object is an instance of a __________.
program
class
method
data
The correct answer is B
5
A.
B.
C.
D.
________ is invoked to create an object.
A constructor
The main method
A method with a return type
A method with the void return type
The correct answer is A
Which of the following statements are true?
A. A default no-arg constructor is provided automatically if no
constructors are explicitly declared in the class.
B. At least one constructor must always be defined explicitly.
C. Constructors do not have a return type, not even void.
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
61 / 95
Java Programming
(MCQ)
D. Constructors must have the same name as the class itself.
E. Constructors are invoked using the new operator when an object
is created.
The correct answer is ACDE
Analyze the following code:
public class Test {
public static void main(String[] args) {
A a = new A();
a.print();
}
}
class A {
String s;
A(String s) {
this.s = s;
}
void print() {
System.out.println(s);
}
}
A. The program has a compilation error because class A is not a
public class.
B. The program has a compilation error because class A does not
have a default constructor.
C. The program compiles and runs fine and prints nothing.
D. The program would compile and run if you change A a = new A()
to A a = new A("5").
The correct answer is BD
What is wrong in the following code?
class TempClass {
int i;
public void TempClass(int j) {
int i = j;
}
}
public class C {
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
62 / 95
Java Programming
(MCQ)
public static void main(String[] args) {
TempClass temp = new TempClass(2);
}
A.
B.
C.
D.
}
The program has a compilation error because TempClass does not
have a default constructor.
The program has a compilation error because TempClass does not
have a constructor with an int argument.
The program compiles fine, but it does not run because class C
is not public.
The program compiles and runs fine.
9
A.
B.
C.
D.
The correct answer is B
Explanation: The program would be fine if the void keyword
is removed from public void TempClass(int j).
Given the declaration Circle x = new Circle(), which of the
following statement is most accurate.
x contains an int value.
x contains an object of the Circle type.
x contains a reference to a Circle object.
You can assign an int value to x.
The correct answer is C
10
Analyze the following code.
public class Test {
int x;
public Test(String t) {
System.out.println("Test");
}
public static void main(String[] args) {
Test test = null;
System.out.println(test.x);
}
}
A. The program has a syntax
initialized.
B. The program has a syntax
initialized.
C. The program has a syntax
object from the class
error because test is not
error because x has not been
error because you cannot create an
that defines the object.
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
63 / 95
Java Programming
(MCQ)
D. The program has a syntax error because Test does not have a
default constructor.
E. The program has a runtime NullPointerException because test is
null while executing test.x.
The correct answer is E
11
A.
B.
C.
D.
E.
The default value for data field of a boolean type,
numeric type, object type is ___________, respectively.
true, 1, Null
false, 0, null
true, 0, null
true, 1, null
false, 1, null
The correct answer is B
12
Which of the following statements are true?
A. local variables do not have default values.
B. data fields have default values.
C. A variable of a primitive type holds a value of the primitive
type.
D. A variable of a reference type holds a reference to where an
object is stored in the memory.
E. You may assign an int value to a reference variable.
The correct answer is ABCD
13
Analyze the following code:
public class Test {
public static void main(String[] args) {
double radius;
final double PI= 3.15169;
double area = radius * radius * PI;
System.out.println("Area is " + area);
}
}
A. The program has syntax errors because the variable radius is
not initialized.
B. The program has a syntax error because a constant PI is
defined inside a method.
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
64 / 95
Java Programming
(MCQ)
C. The program has no syntax errors but will get a runtime error
because radius is not initialized.
D. The program compiles and runs fine.
The correct answer is A
14
Analyze the following code.
public class Test {
int x;
public Test(String t) {
System.out.println("Test");
}
public static void main(String[] args) {
Test test = new Test();
System.out.println(test.x);
}
}
A. The program has a syntax error because System.out.println
method cannot be invoked from the constructor.
B. The program has a syntax error because x has not been
initialized.
C. The program has a syntax error because you cannot create an
object from the class that defines the object.
D. The program has a syntax error because Test does not have a
default constructor.
The correct answer is D
15
A.
B.
C.
D.
Suppose TestCircle and Circle in Example 7.1 are in two
separate files named TestCircle.java and Circle.java,
respectively. What is the outcome of compiling
TestCircle.java and then Circle.java?
Only TestCircle.java compiles.
Only Circle.java compiles.
Both compile fine.
Neither compiles successfully.
The correct answer is C
16
Which of the following statement is most accurate?
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
65 / 95
Java Programming
(MCQ)
A.
B.
C.
D.
A reference variable is an object.
A reference variable refers to an object.
An object may contain other objects.
An object may contain the references of other objects.
The correct answer is BD
18
A.
B.
C.
D.
How many JFrame objects can you create and how many can
you display?
one
two
three
unlimited
The correct answer is D
19
A.
B.
C.
D.
Variables that are shared by every instances of a class
are __________.
public variables
private variables
instance variables
class variables
The correct answer is D
21
A.
B.
C.
D.
A method that is associated with an individual object is
called __________.
a static method
a class method
an instance method
an object method
The correct answer is C
22
A.
B.
C.
D.
E.
To declare a constant MAX_LENGTH as a member of the class,
you write
final static MAX_LENGTH = 99.98;
final static float MAX_LENGTH = 99.98;
static double MAX_LENGTH = 99.98;
final double MAX_LENGTH = 99.98;
final static double MAX_LENGTH = 99.98;
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
66 / 95
Java Programming
(MCQ)
The correct answer is E
23
Analyze the following code.
public class Test {
public static void main(String[] args) {
int n = 2;
xMethod(n);
System.out.println("n is " + n);
}
void xMethod(int n) {
n++;
}
}
A. The code has a syntax error because xMethod does not return a
value.
B. The code has a syntax error because xMethod is not declared
static.
C. The code prints n is 1.
D. The code prints n is 2.
E. The code prints n is 3.
The correct answer is B
24
What is the printout of the second println statement in
the main method?
public class Foo {
int i;
static int s;
public static void main(String[] args)
Foo f1 = new Foo();
System.out.println("f1.i is " + f1.i
f1.s);
Foo f2 = new Foo();
System.out.println("f2.i is " + f2.i
f2.s);
Foo f3 = new Foo();
System.out.println("f3.i is " + f3.i
f3.s);
}
{
+ " f1.s is " +
+ " f2.s is " +
+ " f3.s is " +
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
67 / 95
Java Programming
(MCQ)
public Foo() {
i++;
s++;
}
}
A.
B.
C.
D.
f2.i
f2.i
f2.i
f2.i
25
is
is
is
is
1
1
2
2
f2.s
f2.s
f2.s
f2.s
is
is
is
is
1
2
2
1
The correct answer is B
Explanation: i is an instance variable and s is static,
shared by all objects of the Foo class.
What is the printout of the third println statement in the
main method?
public class Foo {
int i;
static int s;
public static void main(String[] args)
Foo f1 = new Foo();
System.out.println("f1.i is " + f1.i
f1.s);
Foo f2 = new Foo();
System.out.println("f2.i is " + f2.i
f2.s);
Foo f3 = new Foo();
System.out.println("f3.i is " + f3.i
f3.s);
}
{
+ " f1.s is " +
+ " f2.s is " +
+ " f3.s is " +
public Foo() {
i++;
s++;
}
}
A.
B.
C.
D.
E.
f3.i
f3.i
f3.i
f3.i
f3.i
is
is
is
is
is
1
1
1
3
3
f3.s
f3.s
f3.s
f3.s
f3.s
is
is
is
is
is
1
2
3
1
3
The correct answer is C
Explanation: i is an instance variable and s is static,
shared by all objects of the Foo class.
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
68 / 95
Java Programming
(MCQ)
26
What code may be filled in the blank without causing
syntax or runtime errors:
public class Test {
java.util.Date date;
public static void main(String[] args) {
Test test = new Test();
System.out.println(_________________);
}
}
A.
B.
C.
D.
test.date
date
test.date.toString()
date.toString()
27
A.
B.
C.
D.
The correct answer is A
Explanation: b and d cause syntax errors because date is an
instance variable and cannot be accessed from static
context. c is wrong because test.date is null, causing
NullPointerException.
To prevent a class from being instantiated,
_____________________
don't use any modifiers on the constructor.
use the public modifier on the constructor.
use the private modifier on the constructor.
use the static modifier on the constructor.
The correct answer is C
28
Analyze the following code:
public class Test {
public static void main(String args[]) {
NClass nc = new NClass();
nc.t = nc.t++;
}
}
class NClass {
int t;
private NClass() {
}
}
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
69 / 95
Java Programming
(MCQ)
A. The program has a compilation error because the NClass class
has a private constructor.
B. The program does not compile because the parameter list of the
main method is wrong.
C. The program compiles, but has a runtime error because t has no
initial value.
D. The program compiles and runs fine.
29
The correct answer is A
Explanation: You cannot use the private constructor to
create an object.
Analyze the following code:
public class Test {
private int t;
public static void main(String[] args) {
int x;
System.out.println(t);
}
}
A. The variable t is not initialized and therefore causes errors.
B. The variable t is private and therefore cannot be accessed in
the main method.
C. t is non-static and it cannot be referenced in a static
context in the main method.
D. The variable x is not initialized and therefore causes errors.
E. The program compiles and runs fine.
The correct answer is C
30
Analyze the following code and choose the best answer:
public class Foo {
private int x;
public static void main(String[] args) {
Foo foo = new Foo();
System.out.println(foo.x);
}
}
A. Since x is private, it cannot be accessed from an object foo.
B. Since x is defined in the class Foo, it can be accessed by any
method inside the class without using an object. You can
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
70 / 95
Java Programming
(MCQ)
write the code to access x without creating an object such
as foo in this code.
C. Since x is an instance variable, it cannot be directly used
inside a main method. However, it can be accessed through an
object such as foo in this code.
D. You cannot create a self-referenced object; that is, foo is
created inside the class Foo.
31
A.
B.
C.
D.
The correct answer is C
Explanation: (A) is incorrect, since x can be accessed by an
object of Foo inside the Foo class. (B) is incorrect because
x is non-static, it cannot be accessed in the main method
without creating an object. (D) is incorrect, since it is
permissible to create an instance of the class within the
class. The best choice is (C).
Which of the following statements are true?
Use the private modifier to encapsulate data fields.
Encapsulating data fields makes the program easy to maintain.
Encapsulating data fields makes the program short.
Encapsulating data fields helps prevent programming errors.
The correct answer is ABD
32
A.
B.
C.
D.
Suppose you wish to provide an accessor method for a
boolean property finished, what signature of the method
should be?
public
public
public
public
void getFinished()
boolean getFinished()
boolean isFinished()
void isFinished()
The correct answer is C
33
Which is the advantage of encapsulation?
A. Only public methods are needed.
B. Making the class final causes no consequential changes to
other code.
C. It changes the implementation without changing a class's
contract and causes no consequential changes to other code.
D. It changes a class's contract without changing the
implementation and causes no consequential changes to other
code.
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
71 / 95
Java Programming
(MCQ)
The correct answer is C
34
Which of the following statements are true about an
immutable object?
A. The contents of an immutable object cannot be modified.
B. All properties of an immutable object must be private.
C. All properties of an immutable object must be of primitive
types.
D. An object type property in an immutable object must also be
immutable.
E. An immutable object contains no mutator methods.
The correct answer is ABDE
35
A.
B.
C.
D.
When invoking a method with an object argument,
___________ is passed.
the contents of the object
a copy of the object
the reference of the object
the object is copied, then the reference of the copied object
The correct answer is C
36
What is the value of myCount.count displayed?
public class Test {
public static void main(String[] args) {
Count myCount = new Count();
int times = 0;
for (int i=0; i<100; i++)
increment(myCount, times);
System.out.println(
"myCount.count = " + myCount.count);
System.out.println("times = "+ times);
}
public static void increment(Count c, int times) {
c.count++;
times++;
}
}
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
72 / 95
Java Programming
(MCQ)
class Count {
int count;
Count(int c) {
count = c;
}
Count() {
count = 1;
}
}
A.
B.
C.
D.
101
100
99
98
The correct answer is A
37
What is the value of times displayed?
public class Test {
public static void main(String[] args) {
Count myCount = new Count();
int times = 0;
for (int i=0; i<100; i++)
increment(myCount, times);
System.out.println(
"myCount.count = " + myCount.count);
System.out.println("times = "+ times);
}
public static void increment(Count c, int times) {
c.count++;
times++;
}
}
class Count {
int count;
Count(int c) {
count = c;
}
Count() {
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
73 / 95
Java Programming
(MCQ)
count = 1;
}
}
A.
B.
C.
D.
E.
101
100
99
98
0
The correct answer is E
38
What is the output of the following program?
import java.util.Date;
public class Test {
public static void main(String[] args) {
Date date = new Date(1234567);
m1(date);
System.out.print(date.getTime() + " ");
m2(date);
System.out.println(date.getTime());
}
public static void m1(Date date) {
date = new Date(7654321);
}
public static void m2(Date date) {
date.setTime(7654321);
}
}
A.
B.
C.
D.
1234567
1234567
7654321
7654321
1234567
7654321
1234567
7654321
The correct answer is B
39
What is the printout for the first statement in the main
method?
public class Foo {
static int i = 0;
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
74 / 95
Java Programming
(MCQ)
static int j = 0;
public static void main(String[] args) {
int i = 2;
int k = 3;
{
int j = 3;
System.out.println("i + j is " + i + j);
}
k = i + j;
System.out.println("k is " + k);
System.out.println("j is " + j);
}
}
A.
B.
C.
D.
i
i
i
i
+
+
+
+
40
j
j
j
j
is
is
is
is
5
6
22
23
The correct answer is D
Explanation: The first + operator in the expression "i + j
is " + i + j is evaluated.
What is the printout for the second statement in the main
method?
public class Foo {
static int i = 0;
static int j = 0;
public static void main(String[] args) {
int i = 2;
int k = 3;
{
int j = 3;
System.out.println("i + j is " + i + j);
}
k = i + j;
System.out.println("k is " + k);
System.out.println("j is " + j);
}
}
A. k is 0
B. k is 1
C. k is 2
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
75 / 95
Java Programming
(MCQ)
D. k is 3
41
The correct answer is C
Explanation: When computing k = i + j, i is 2 and j is 0.
What is the printout for the third statement in the main
method?
public class Foo {
static int i = 0;
static int j = 0;
public static void main(String[] args) {
int i = 2;
int k = 3;
{
int j = 3;
System.out.println("i + j is " + i + j);
}
k = i + j;
System.out.println("k is " + k);
System.out.println("j is " + j);
}
}
A.
B.
C.
D.
j
j
j
j
is
is
is
is
0
1
2
3
The correct answer is A
42
You can declare two variables with the same name in
__________.
A. a method one as a formal parameter and the other as a local
variable
B. a block
C. two nested blocks in a method
D. different methods in a class
The correct answer is D
43
Analyze the following code:
class Circle {
private double radius;
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
76 / 95
Java Programming
(MCQ)
public Circle(double radius) {
radius = radius;
}
}
A. The program has a compilation error because it does not have a
main method.
B. The program will compile, but you cannot create an object of
Circle with a specified radius. The object will always have
radius 0.
C. The program has a compilation error because you cannot assign
radius to radius.
D. The program does not compile because Circle does not have a
default constructor.
44
The correct answer is B
Explanation: You have replace radius = radius by this.radius
= radius
Analyze the following code:
class Test {
private double i;
public Test(double i) {
this.t();
this.i = i;
}
public Test() {
System.out.println("Default constructor");
this(1);
}
public void t() {
System.out.println("Invoking t");
}
}
A. this.t() may be replaced by t().
B. this.i may be replaced by i.
C. this(1) must be called before System.out.println("Default
constructor").
D. this(1) must be replaced by this(1.0).
The correct answer is AC
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
77 / 95
Java Programming
(MCQ)
45
Given the declaration Circle[] x = new Circle[10], which
of the following statement is most accurate.
A. x contains an array of ten int values.
B. x contains an array of ten objects of the Circle type.
C. x contains a reference to an array and each element in the
array can hold a reference to a Circle object.
D. x contains a reference to an array and each element in the
array can hold a Circle object.
The correct answer is C
46
A.
B.
C.
D.
Assume java.util.Date[] dates = new java.util.Date[10],
which of the following statements are true?
dates is null.
dates[0] is null.
dates = new java.util.Date[5] is fine, which assigns a new
array to dates.
dates = new Date() is fine, which creates a new Date object
and assigns to dates.
The correct answer is BC
Suppose s is a string with the value "java". What will be
assigned to x if you execute the following code?
char x = s.charAt(4);
A. 'a'
B. 'v'
C. Nothing will be assigned to x, because the execution causes
the runtime error StringIndexOutofBoundsException.
The correct answer is C
2
A.
B.
C.
D.
Which of the following statements is preferred to create a
string "Welcome to Java"?
String
String
String
String
s = "Welcome to Java";
s = new String("Welcome to Java");
s; s = "Welcome to Java";
s; s = new String("Welcome to Java");
The correct answer is A
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
78 / 95
Java Programming
(MCQ)
Explanation: (a) is better than (b) because the string
created in (a) is interned. Since strings are immutable and
are ubiquitous in programming, to improve efficiency and
save memory, the JVM uses a unique instance for string
literals with the same character sequence. Such an instance
is called interned. The JVM (a) is simpler than (c).
What is the output of the following code?
public class Test {
public static void main(String[] args) {
String s1 = "Welcome to Java!";
String s2 = s1;
if (s1 == s2)
System.out.println("s1 and s2 reference to the same
String object");
else
System.out.println("s1 and s2 reference to different
String objects");
}
}
A. s1 and s2 reference to the same String object
B. s1 and s2 reference to different String objects
The correct answer is A
What is the output of the following code?
public class Test {
public static void main(String[] args) {
String s1 = "Welcome to Java!";
String s2 = "Welcome to Java!";
if (s1 == s2)
System.out.println("s1 and s2 reference to the same
String object");
else
System.out.println("s1 and s2 reference to different
String objects");
}
}
A. s1 and s2 reference to the same String object
B. s1 and s2 reference to different String objects
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
79 / 95
Java Programming
(MCQ)
The correct answer is A
Explanation: Since strings are immutable and are ubiquitous
in programming, to improve efficiency and save memory, the
JVM uses a unique instance for string literals with the same
character sequence. Such an instance is called interned.
What is the output of the following code?
public class Test {
public static void main(String[] args) {
String s1 = new String("Welcome to Java!");
String s2 = new String("Welcome to Java!");
if (s1 == s2)
System.out.println("s1 and s2 reference to the same
String object");
else
System.out.println("s1 and s2 reference to different
String objects");
}
}
A. s1 and s2 reference to the same String object
B. s1 and s2 reference to different String objects
The correct answer is B
Explanation: s1 and s2 point to two different objects.
Suppose s1 and s2 are two strings. What is the result of
s1.equals(s2) == s2.equals(s1)
A. true
B. false
The correct answer is A
What is the output of the following code?
public class Test {
public static void main(String[] args) {
String s1 = new String("Welcome to Java!");
String s2 = new String("Welcome to Java!");
if (s1.equals(s2))
System.out.println("s1 and s2 have the same
contents");
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
80 / 95
Java Programming
(MCQ)
else
System.out.println("s1 and s2 have different
contents");
}
}
A. s1 and s2 have the same contents
B. s1 and s2 have different contents
The correct answer is A
What is the output of the following code?
public class Test {
public static void main(String[] args) {
String s1 = new String("Welcome to Java!");
String s2 = s1.toUpperCase();
if (s1 == s2)
System.out.println("s1 and s2 reference to the same
String object");
else if (s1.equals(s2))
System.out.println("s1 and s2 have the same
contents");
else
System.out.println("s1 and s2 have different
contents");
}
}
A. s1 and s2 reference to the same String object
B. s1 and s2 have the same contents
C. s1 and s2 have different contents
The correct answer is C
What is the output of the following code?
public class Test {
public static void main(String[] args) {
String s1 = new String("Welcome to Java");
String s2 = s1;
s1 += "and Welcome to HTML";
if (s1 == s2)
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
81 / 95
Java Programming
(MCQ)
System.out.println("s1 and s2 reference to the same
String object");
else
System.out.println("s1 and s2 reference to different
String objects");
}
}
A. s1 and s2 reference to the same String object
B. s1 and s2 reference to different String objects
The correct answer is B
11
A.
B.
C.
D.
E.
Suppose s1 and s2 are two strings. Which of the following
statements or expressions are incorrect?
String s = new String("new string");
String s3 = s1 + s2
s1 >= s2
int i = s1.length
s1.charAt(0) = '5'
The correct answer is CDE
12
A.
B.
C.
D.
Suppose s1 and s2 are two strings. Which of the following
statements or expressions is incorrect?
String s3 = s1 - s2;
boolean b = s1.compareTo(s2);
char c = s1[0];
char c = s1.charAt(s1.length());
The correct answer is ABCD
13
A.
B.
C.
D.
E.
"abc".compareTo("aba") returns ___________.
1
2
-1
-2
0
The correct answer is B
14
"AbA".compareToIgnoreCase("abC") returns ___________.
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
82 / 95
Java Programming
(MCQ)
A.
B.
C.
D.
E.
1
2
-1
-2
0
The correct answer is D
15
A.
B.
C.
D.
E.
____________________ returns true.
"peter".compareToIgnoreCase("Peter")
"peter".compareToIgnoreCase("peter")
"peter".equalsIgnoreCase("Peter")
"peter".equalsIgnoreCase("peter")
"peter".equals("peter")
The correct answer is CDE
16
A.
B.
C.
D.
What is the return value of "SELECT".substring(0, 5)?
"SELECT"
"SELEC"
"SELE"
"ELECT"
The correct answer is B
17
A.
B.
C.
D.
What is the return value of "SELECT".substring(4, 4)?
an empty string
C
T
E
18
The correct answer is A
Explanation: If beginIndex is endIndex,
substring(beginIndex, endIndex) returns an empty string with
length 0. It would be a runtime error, if beginIndex >
endIndex.
Analyze the following code.
class Test {
public static void main(String[] args) {
String s;
System.out.println("s is " + s);
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
83 / 95
Java Programming
(MCQ)
}
}
A. The program has a compilation error because s is not
initialized, but it is referenced in the println statement.
B. The program has a runtime error because s is not initialized,
but it is referenced in the println statement.
C. The program has a runtime error because s is null in the
println statement.
D. The program compiles and runs fine.
The correct answer is A
19
A.
B.
C.
D.
if
if
if
if
To check if a string s contains the prefix "Java", you may
write
(s.startsWith("Java")) ...
(s.indexOf("Java") == 0) ...
(s.substring(0, 4).equals("Java")) ...
(s.charAt(0) == 'J' && s.charAt(1) == 'a' && s.charAt(2) ==
'v' && s.charAt(3) == 'a') ...
The correct answer is ABCD
20
A.
B.
C.
D.
E.
if
if
if
if
if
21
To check if a string s contains the suffix "Java", you may
write
(s.endsWith("Java")) ...
(s.lastIndexOf("Java") >= 0) ...
(s.substring(s.length() - 4).equals("Java")) ...
(s.substring(s.length() - 5).equals("Java")) ...
(s.charAt(s.length() - 4) == 'J' && s.charAt(s.length() 3) == 'a' && s.charAt(s.length() - 2) == 'v' &&
s.charAt(s.length() - 1) == 'a') ...
The correct answer is ACE
Explanation: s.lastIndexOf("Java") >= 0 does not indicate
that Java is the suffix of the string.
Which of the following is the correct statement to return
JAVA?
A. toUpperCase("Java")
B. "Java".toUpperCase("Java")
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
84 / 95
Java Programming
(MCQ)
C. "Java".toUpperCase()
D. String.toUpperCase("Java")
The correct answer is C
22
A.
B.
C.
D.
Which of the following is the correct statement to return
a string from an array a of characters?
toString(a)
new String(a)
convertToString(a)
String.toString(a)
The correct answer is B
23
A.
B.
C.
D.
Assume s is " abc ", the method __________ returns a new
string "abc".
s.trim(s)
trim(s)
String.trim(s)
s.trim()
The correct answer is D
24
A.
B.
C.
D.
E.
Assume s is "ABCABC", the method __________ returns a new
string "aBCaBC".
s.toLowerCase(s)
s.toLowerCase()
s.replace('A', 'a')
s.replace('a', 'A')
s.replace("ABCABC", "aBCaBC")
The correct answer is C
25
A.
B.
C.
D.
E.
Assume s is "ABCABC", the method __________ returns an
array of characters.
toChars(s)
s.toCharArray()
String.toChars()
String.toCharArray()
s.toChars()
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
85 / 95
Java Programming
(MCQ)
The correct answer is B
26
A.
B.
C.
D.
E.
__________ returns a string.
String.valueOf(123)
String.valueOf(12.53)
String.valueOf(false)
String.valueOf(new char[]{'a', 'b', 'c'})
String.copyValueOf(new char[]{'a', 'b', 'c'})
The correct answer is ABCDE
27
The following program displays __________.
public class Test {
public static void main(String[] args) {
String s = "Java";
StringBuffer buffer = new StringBuffer(s);
change(s);
System.out.println(s);
}
private static void change(String s) {
s = s + " and HTML";
}
}
A.
B.
C.
D.
Java
Java and HTML
and HTML
nothing is displayed
28
A.
B.
C.
D.
The correct answer is A
Explanation: Inside the method, the statement s = s + " and
HTML" creates a new String object s, which is different from
the original String object passed to the change(s) method.
The original String object has not been changed. Therefore,
the printout from the original string is Java.
Which of following is not a correct method in Character?
isLetterOrDigit(char)
isLetter(char)
isDigit()
toLowerCase(char)
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
86 / 95
Java Programming
(MCQ)
E. toUpperCase()
29
A.
B.
C.
D.
E.
The correct answer is CE
Explanation: isDigit() should be isDigit(char) and
toUpperCase() should be toUpperCase(char)
Suppose Character x = new Character('a'),
__________________ returns true.
x.equals(new Character('a'))
x.compareToIgnoreCase('A')
x.equalsIgnoreCase('A')
x.equals('a')
x.equals("a")
30
The correct answer is AD
Explanation: (B) and (C) are wrong because no methods
compareToIgnoreCase and equalsIgnoreCase are in the
Character class. (E) is wrong because a character is not a
string.
Analyze the following code.
class Test {
public static void main(String[] args) {
StringBuffer strBuf = new StringBuffer(4);
strBuf.append("ABCDE");
System.out.println("What's strBuf.charAt(5)? " +
strBuf.charAt(5));
}
}
A. The program has a compilation error because you cannot specify
initial capacity in the StringBuffer constructor.
B. The program has a runtime error because because the buffer's
capacity is 4, but five characters "ABCDE" are appended into
the buffer.
C. The program has a runtime error because the length of the
string in the buffer is 5 after "ABCDE" is appended into the
buffer. Therefore, strBuf.charAt(5) is out of range.
D. The program compiles and runs fine.
The correct answer is C
Explanation: The charAt method returns the character at a
specific index in the string buffer. The first character of
a string buffer is at index 0, the next at index 1, and so
on. The index argument must be greater than or equal to 0,
and less than the length of the string buffer.
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
87 / 95
Java Programming
(MCQ)
31
A.
B.
C.
D.
Which of the following is true?
You
You
You
The
can add characters into a string buffer.
can delete characters into a string buffer.
can reverse the characters in a string buffer.
capacity of a string buffer can be automatically adjusted.
The correct answer is ABCD
32
A.
B.
C.
D.
_________ returns the last character in a StringBuffer
variable named strBuf?
strBuf.charAt(strBuf.length() - 1)
strBuf.charAt(strBuf.capacity() - 1)
StringBuffer.charAt(strBuf.length() - 1)
StringBuffer.charAt(strBuf.capacity() - 1)
The correct answer is A
33
A.
B.
C.
D.
Assume StringBuffer strBuf is "ABCDEFG", after invoking
_________, strBuf contains "AEFG".
strBuf.delete(0,
strBuf.delete(1,
strBuf.delete(1,
strBuf.delete(2,
3)
3)
4)
4)
The correct answer is C
34
A.
B.
C.
D.
Assume StringBuffer strBuf is "ABCDEFG", after invoking
_________, strBuf contains "ABCRRRRDEFG".
strBuf.insert(1,
strBuf.insert(2,
strBuf.insert(3,
strBuf.insert(4,
"RRRR")
"RRRR")
"RRRR")
"RRRR")
The correct answer is C
35
Assume StringBuffer strBuf is "ABCCEFC", after invoking
_________, strBuf contains "ABTTEFT".
A. strBuf.replace('C', 'T')
B. strBuf.replace("C", "T")
C. strBuf.replace("CC", "TT")
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
88 / 95
Java Programming
(MCQ)
D. strBuf.replace('C', "TT")
E. strBuf.replace(2, 7, "TTEFT")
The correct answer is E
36
A.
B.
C.
D.
E.
The StringBuffer methods _____________ not only change the
contents of a string buffer, but also returns a reference to
the string buffer.
delete
append
insert
reverse
replace
The correct answer is ABCDE
37
A.
B.
C.
D.
E.
The StringBuffer method _____________ does not return a
reference to the string buffer.
substring
setCharAt
setLength
length
toString
The correct answer is ABCDE
38
The following program displays __________.
public class Test {
public static void main(String[] args) {
String s = "Java";
StringBuffer buffer = new StringBuffer(s);
change(buffer);
System.out.println(buffer);
}
private static void change(StringBuffer buffer) {
buffer.append(" and HTML");
}
}
A. Java
B. Java and HTML
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
89 / 95
Java Programming
(MCQ)
C. and HTML
D. nothing is displayed
39
The correct answer is B
Explanation: Inside the method, the content of the
StringBuffer object is changed to Java and HTML. Therefore,
the printout from buffer is Java and HTML.
How can you get the word "abc" in the main method from the
following call?
java Test "+" 3 "abc" 2
A.
B.
C.
D.
args[0]
args[1]
args[2]
args[3]
The correct answer is C
40
A.
B.
C.
D.
Which code fragment would correctly identify the number of
arguments passed via the command line to a Java application,
excluding the name of the class that is being invoked?
int
int
int
int
count = args.length;
count = args.length - 1;
count = 0; while (args[count] != null) count ++;
count=0; while (!(args[count].equals(""))) count ++;
The correct answer is A
41
A.
B.
C.
D.
Which correctly creates an array of five empty Strings?
String[] a = new String [5];
String[] a = {"", "", "", "", ""};
String[5] a;
String[ ] a = new String [5]; for (int i = 0; i < 5; a[i++] =
null);
The correct answer is B
42
Identify the problems in the following code.
public class Test {
public static void main(String argv[]) {
System.out.println("argv.length is " + argv.length);
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
90 / 95
Java Programming
(MCQ)
}
}
A. The program has a syntax error because String argv[] is wrong
and it should be replaced by String[] args.
B. The program has a syntax error because String args[] is wrong
and it should be replaced by String args[].
C. If you run this program without passing any arguments, the
program would have a runtime error because argv is null.
D. If you run this program without passing any arguments, the
program would display argv.length is 0.
43
A.
B.
C.
D.
E.
Which of the following is the correct header of the main
method?
public
public
public
public
static
44
A.
B.
C.
D.
The correct answer is D
Explanation: The parameter for the main method is an array
of String. The declaration String argv[] is correct. When
you run the program without passing arguments, argv is new
String[0]. Thus, argv.length is 0. See the NOTE box in the
section, "Passing Arguments to Java Programs."
static void main(String[] args)
static void main(String args[])
static void main(String[] x)
static void main(String x[])
void main(String[] args)
The correct answer is ABCD
Explanation: e is incorrect because the main method must be
public.
Which of the following will return true?
"Java
"Java
"Java
"Java
is
is
is
is
fun".equals("Java.*")
fun".matches("Java.*")
cool".equals("Java.*")
powerful".matches("Java.*")
The correct answer is BD
45
A.
B.
C.
D.
Which of the following will return true?
"Java
"Java
"Java
"Java
is
is
is
is
neat".matches("\\*is\\*")
fun".matches(".*")
cool".matches(".+")
powerful".matches(".?is.?")
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
91 / 95
Java Programming
(MCQ)
The correct answer is BC
46
A.
B.
C.
D.
E.
Which of the following will return true?
"Java
"Java
"Java
"Java
"Java
is
is
is
is
is
neat".matches("\\D*")
fun".matches("\\d*")
cool".matches("\\s*")
powerful".matches("\\S*")
powerful".matches("[\\w\\s]*")
The correct answer is AE
47
A.
B.
C.
D.
E.
Which of the following will return true?
"Java
"Java
"Java
"Java
"Java
is
is
is
is
is
neat".matches("\\D*")
fun".matches("\\d*")
cool".matches("\\s*")
powerful".matches("\\S*")
powerful".matches("[\\w\\s]*")
The correct answer is AE
48
A.
B.
C.
D.
E.
Which of the following will return true?
"Java
"Java
"Java
"Java
"Java
is
is
is
is
is
neat".matches("Java.{3}neat")
neat".matches("Java.{4}neat")
fun".matches("Java.{4,}fun")
fun".matches("Java.{5,}fun")
fun".matches("Java.{4,6}fun")
The correct answer is BCE
49
A.
B.
C.
D.
What is displayed by the following statement?
System.out.println("Java is neat".replaceAll("is",
"AAA"));
JavaAAAneat
JavaAAA neat
Java AAA neat
Java AAAneat
The correct answer is C
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
92 / 95
Java Programming
(MCQ)
50
A.
B.
C.
D.
What is displayed by the following statement?
System.out.println("Java is
neat".replaceFirst("[\\s]", "BB"));
JavaBBis neat
JavaBBisBBneat
Java is neat
Javaisneat
The correct answer is A
51
A.
B.
C.
D.
What is displayed by the following code?
public static void main(String[] args) throws Exception {
String[] tokens = "Welcome to Java".split("o");
for (int i = 0; i < tokens.length; i++) {
System.out.print(tokens[i] + " ");
}
}
Welcome
Welc me
Welc me
Welcome
to Java
to Java
t Java
t Java
The correct answer is C
52
A.
B.
C.
D.
What is displayed by the following code?
public static void main(String[] args) throws Exception {
String[] tokens = "Welcome to Java".split("[o|a]");
for (int i = 0; i < tokens.length; i++) {
System.out.print(tokens[i] + " ");
}
}
Welc me
Welc me
Welc me
Welcome
t J v
to J va
t Jav
t ava
The correct answer is A
53
What are the reasons to create an instance of the File
class?
A. To determine whether the file exist.
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
93 / 95
Java Programming
(MCQ)
B. To obtain the properties of the file such as whether the file
can be read, written, or is hidden.
C. To rename the file.
D. To delete the file.
E. To read/write data from/to a file
The correct answer is ABCD
54
A.
B.
C.
D.
E.
Which of the following returns the path separator
character?
File.pathSeparator
File.pathSeparatorChar
File.separator
File.separatorChar
None of the above.
The correct answer is B
55
A.
B.
C.
D.
Which of the following statements creates an instance of
File on Window for the file c:\t.txt?
new
new
new
new
File("c:\txt.txt")
File("c:\\txt.txt")
File("c:/txt.txt")
File("c://txt.txt")
The correct answer is B
56
Which of the following statements are true?
A. If a file (e.g., c:\temp.txt) does not exist, new
File("c:\\temp.txt") returns null.
B. If a directory (e.g., c:\liang) does not exist, new
File("c:\liang") returns null.
C. If a file (e.g., c:\temp.txt) does not exist, new
File("c:\\temp.txt") creates a new file named c:\temp.txt.
D. If a directory (e.g., c:\liang) does not exist, new
File("c:\liang") creates a new directory named c:\liang.
E. None of the above.
The correct answer is E
57
Which class contains the method for checking whether a
file exist?
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
94 / 95
Java Programming
(MCQ)
A.
B.
C.
D.
File
PrintWriter
Scanner
System
The correct answer is A
59
A.
B.
C.
D.
Which class do you use to read data into a text file?
File
PrintWriter
Scanner
System
The correct answer is C
60
A.
B.
C.
D.
Which method can be use to write data?
close
print
exist
rename
The correct answer is B
62
A.
B.
C.
D.
Which method can be use to create an input object for file
temp.txt?
new
new
new
new
Scanner("temp.txt")
Scanner(temp.txt)
Scanner(new File("temp.txt"))
Scanner(File("temp.txt"))
The correct answer is C
63
Suppose you enter 34.3 57.8 789, then press the ENTER key.
Analyze the following code.
Scanner scanner = new Scanner(System.in);
int intValue = scanner.nextInt();
int doubleValue = scanner.nextInt();
String line = scanner.nextLine();
A. After the last statement is executed, intValue is 34.
B. The program has a runtime error because 34.3 is not an
integer.
Copy Protected Document. Do not try to Copy
Rudra Prasad Nayak
95 / 95
Java Programming
(MCQ)
C. After
'7
D. After
'7
the last
', '8 ',
the last
', '8 ',
statement is executed, line contains characters
'9?, '\n '.
statement is executed, line contains characters
'9?.
The correct answer is B
Copy Protected Document. Do not try to Copy