0

Java Objects and Collections Quiz

Description: Java Objects and Collections Quiz
Number of Questions: 10
Created by:
Tags: java
Attempted 0/10 Correct 0 Score 0

Suppose that you would like to create an instance of a new Map that has an iteration order that is the same as the iteration order of an existing instance of a Map. Which concrete implementation of the Map interface should be used for the new instance?

  1. TreeMap

  2. HashMap

  3. LinkedHashMap

  4. The answer depends on the implementation of the existing instance.


Correct Option: C
  1. java.lang.String

  2. java.lang.Double

  3. java.lang.StringBuffer

  4. java.lang.Character


Correct Option: C

Which collection class allows you to grow or shrink its size and provides indexed access to its elements, but whose methods are not synchronized?

  1. java.util.HashSet

  2. java.util.LinkedHashSet

  3. java.util.List

  4. java.util.ArrayList


Correct Option: D

AI Explanation

To answer this question, you need to understand the characteristics of different collection classes in Java.

Option A) java.util.HashSet - This option is incorrect because HashSet does not provide indexed access to its elements. It does not maintain the order of its elements either.

Option B) java.util.LinkedHashSet - This option is incorrect because LinkedHashSet does not provide indexed access to its elements. It maintains the insertion order of its elements.

Option C) java.util.List - This option is incorrect because List is an interface, not a specific implementation. It can be implemented by various classes such as ArrayList, LinkedList, etc.

Option D) java.util.ArrayList - This option is correct because ArrayList allows you to grow or shrink its size dynamically. It provides indexed access to its elements, meaning you can access elements using their positions in the list. However, the methods of ArrayList are not synchronized, which means they are not thread-safe.

The correct answer is Option D. ArrayList is the collection class that allows you to grow or shrink its size, provides indexed access to its elements, and its methods are not synchronized.

You need to store elements in a collection that guarantees that no duplicates are stored and all elements can be accessed in natural order. Which interface provides that capability?

  1. java.util.Map

  2. java.util.Set

  3. java.util.List

  4. java.util.Collection


Correct Option: B

AI Explanation

To answer this question, you need to understand the different interfaces provided by Java's java.util package for storing collections of elements.

Option A) java.util.Map - This option is incorrect because a Map does not guarantee that no duplicates are stored. It allows for key-value pairs, where each key must be unique, but the values can be duplicated.

Option B) java.util.Set - This option is correct because a Set interface provides the capability of storing elements in a collection without allowing duplicates. It ensures that every element in the set is unique. Elements in a set are not stored in any particular order, but they can be accessed in a natural order.

Option C) java.util.List - This option is incorrect because a List interface allows duplicate elements to be stored. It maintains the insertion order of elements, which means elements can be accessed in the order they were added.

Option D) java.util.Collection - This option is incorrect because Collection is not a specific interface that provides the capability mentioned in the question. It is a more general interface that provides basic operations for collections, but it does not guarantee uniqueness or ordering.

The correct answer is B) java.util.Set. This option is correct because a Set interface guarantees that no duplicates are stored and allows for accessing elements in a natural order.

Which interface does java.util.Hashtable implement?

  1. Java.util.Map

  2. Java.util.List

  3. Java.util.HashTable

  4. Java.util.Collection


Correct Option: A
Explanation:

Hash table based implementation of the Map interface.

Which interface provides the capability to store objects using a key-value pair?

  1. Java.util.Map

  2. Java.util.Set

  3. Java.util.List

  4. Java.util.Collection


Correct Option: A
Explanation:

An object that maps keys to values. A map cannot contain duplicate keys; each key can map to at most one value.

Which collection class allows you to associate its elements with key values, and allows you to retrieve objects in FIFO (first-in, first-out) sequence?

  1. java.util.ArrayList

  2. java.util.LinkedHashMap

  3. java.util.HashMap

  4. java.util.TreeMap


Correct Option: B

Which collection class allows you to access its elements by associating a key with an element's value, and provides synchronization?

  1. java.util.SortedMap

  2. java.util.TreeMap

  3. java.util.TreeSet

  4. java.util.Hashtable


Correct Option: D

Which is valid declaration of a float?

  1. float f = 1F;

  2. float f = 1.0;

  3. float f = "1";

  4. float f = 1.0d;


Correct Option: A

AI Explanation

To answer this question, we need to understand the valid ways to declare a float.

Option A) float f = 1F; - This option is correct because it uses the "F" suffix to indicate that the number is a float literal. In Java, the default type for floating-point numbers is double, so adding the "F" suffix is necessary to explicitly declare the variable as a float.

Option B) float f = 1.0; - This option is incorrect because the literal value 1.0 is considered a double by default. To assign a double value to a float variable, you need to explicitly cast it by adding the "F" suffix, like in Option A.

Option C) float f = "1"; - This option is incorrect because it tries to assign a string literal to a float variable. In Java, you cannot directly assign a string to a float without first converting it using appropriate methods.

Option D) float f = 1.0d; - This option is incorrect because the "d" suffix indicates that the literal value is a double. As mentioned earlier, to assign a double value to a float variable, you need to explicitly cast it by adding the "F" suffix.

The correct answer is A) float f = 1F; because it correctly declares a float variable by using the "F" suffix to indicate a float literal.

What is the numerical range of char?

  1. 0 to 32767

  2. 0 to 65535

  3. -256 to 255

  4. -32768 to 32767


Correct Option: B

AI Explanation

To answer this question, we need to understand the numerical range of the char data type.

In Java, the char data type represents a single character and is stored as a 16-bit unsigned integer. The numerical range of char is from 0 to 65535.

Let's go through each option to understand why it is correct or incorrect:

Option A) 0 to 32767 - This option is incorrect because it does not cover the full range of char values.

Option B) 0 to 65535 - This option is correct because it represents the full numerical range of the char data type.

Option C) -256 to 255 - This option is incorrect because it does not cover the positive range of char values.

Option D) -32768 to 32767 - This option is incorrect because it includes negative values, while char is an unsigned data type.

The correct answer is Option B. This option is correct because it represents the full numerical range of the char data type, which is from 0 to 65535.

- Hide questions