# Java quiz 20 MCQS

**Question 1**(5 points)

Method A invokes method A itself. This is called _________.

Question 1 options:

indirect recursion

explicit recursion

direct recursion

one-step recursion

Save

**Question 2**(5 points)

What are the base cases in the following recursive method?

public static void recurse(int n)

{

if (n 0)

{

System.out.print(n % 10);

recurse(n / 10);

}

}

Question 2 options:

n < 0

n <= 0

n 0

no base cases

Save

**Question 3**(5 points)

What will be displayed by the method call recurse(1234)?

public static void recurse(int n)

{

if (n <= 0)

{

System.out.print(n % 10);

recurse(n / 10);

}

}

Question 3 options:

1234

4 3 2 1

Nothing

4321

Save

**Question 4**(5 points)

Analyze the following recursive method and indicate which of the following will be true.

public static long factorial(int n)

{

return n * factorial(n - 1);

}

Question 4 options:

Invoking factorial(2) returns 2.

Invoking factorial(1) returns 1.

The method runs infinitely and causes a StackOverflowError.

Invoking factorial(0) returns 0.

Save

**Question 5**(5 points)

Fill in the code to complete the following method for computing factorial.

// Return the factorial for a specified index

public static long factorial(int n)

{

if (n == 0)

return 1;

else

return _____________;

}

Question 5 options:

n * (n - 1)

n

n * factorial(n - 1)

factorial(n - 1) * (n - 1)

Save

**Question 6**(5 points)

What will be displayed by the method call recurse(6)?

public static intrecurse(int n)

{

if (n <= 1)

return 1;

else

return n + recurse(n - 2);

}

Question 6 options:

13

14

11

12

Save

**Question 7**(5 points)

The base case _________ the recursion.

Question 7 options:

stops

breaks

pauses

starts

Save

**Question 8**(5 points)

What is the output of the following program?

{

public static void main(String[] args)

{

System.out.println(countDown(2, 0));

}

public static intcountDown(int n, int result)

{

if (n == 0)

return 0;

else

return countDown(n - 1, n + result);

}

}

Question 8 options:

1

3

0

2

Save

**Question 9**(5 points)

Which of the following statements about recursive methods is accurate?

Question 9 options:

They must have exactly 1 base case and exactly 1 recursive case

They must have at least 1 base case and at least 1 recursive case

They must have exactly 1 base case and at least 1 recursive case

They must have at least 1 base case and exactly 1 recursive case

Save

**Question 10**(5 points)

Which of the following is a possible disadvantage of recursion?

Question 10 options:

Recursive solutions can be less efficient than their iterative counterparts

Recursive solutions tend to have more local variables than their iterative counterparts

Recursive solutions tend to be longer than their iterative counterparts

Recursive solutions are more likely to go into infinite loops than their iterative counterparts

Save

**Question 11**(5 points)

To declare an interface named A with two generic types, use

Question 11 options:

public interface A(E) { ... }

public interface A<E, F { ... }

public interface A<E { ... }

public interface A(E, F) { ... }

Save

**Question 12**(5 points)

Will the following code have a runtime error?

Comparable date = new Date();

inti = date.compareTo("time");

Question 12 options:

Always

Never

Only when date contains an invalid date

Only when date is not the current date

Save

**Question 13**(5 points)

To create a list to store integers, use

Question 13 options:

ArrayList<Object list = new ArrayList<Integer();

ArrayList<Number list = new ArrayList<Integer();

ArrayList<int list = new ArrayList();

ArrayList<Integer list = new ArrayList();

Save

**Question 14**(5 points)

To create a generic type bounded by Number, use

Question 14 options:

<E extends Object

<E extends Number

<E

<E extends Integer

Save

**Question 15**(5 points)

Which of the following describes the benefit of using generic classes to implement collections?

Question 15 options:

It eliminates the need to downcast objects when they are removed from a collection

It eliminates the need to upcast objects when they are inserted into a collection

It eliminates the need to downcast objects when they are inserted into a collection

It eliminates the need to upcast objects when they are removed from a collection

Save

**Question 16**(5 points)

Suppose list list1 is [1, 2, 5] and list list2 is [2, 3, 6]. After list1.addAll(list2), list2 is __________.

Question 16 options:

[1, 5]

[1, 2, 3, 5, 6]

[2, 3, 6]

[1, 2, 2, 3, 5, 6]

Save

**Question 17**(5 points)

Suppose a list contains {red, red, red, red}. What is the list after the following code?

String element = "red";

for (inti = list.size() - 1; i= 0; i--)

if (list.get(i).equals(element))

list.remove(element);

Question 17 options:

[red]

[red, red]

[]

[red, red, red]

Save

**Question 18**(5 points)

Which of the following is correct to sort the elements in a list aList?

Question 18 options:

Arrays.sort(aList)

new LinkedList<String(new String[]{red, green, blue})

Collections.sort(aList)

aList.sort()

Save

**Question 19**(5 points)

Which of the following best describes all objects of type List?

Question 19 options:

They define an ordered collection that prohibits duplicates

They define an ordered collection that allows duplicates

They define an unordered collection that allows duplicates

They define an unordered collection that prohibits duplicates

Save

**Question 20**(5 points)

Which of the following problems would be a good candidate for using a stack?

Question 20 options:

A print spooler that dispatches jobs based on shortest job first

An inventory system that processes product records by product number

A program that is designed to evaluate expressions

A task scheduler that schedules tasks in the order that they are received

Save

You'll get 1 file (10.1KB)