标签:swift bsp data style man frame pil example tip
In java, collection interview questions are mostly asked by the interviewers. Here is the list of mostly asked collections interview questions with answers.
No. | ArrayList | Vector |
---|---|---|
1) | ArrayList is not synchronized. | Vector is synchronized. |
2) | ArrayList is not a legacy class. | Vector is a legacy class. |
3) | ArrayList increases its size by 50% of the array size. | Vector increases its size by doubling the array size. |
No. | ArrayList | LinkedList |
---|---|---|
1) | ArrayList uses a dynamic array. | LinkedList uses doubly linked list. |
2) | ArrayList is not efficient for manipulation because a lot of shifting is required. | LinkedList is efficient for manipulation. |
3) | ArrayList is better to store and fetch data. | LinkedList is better to manipulate data. |
Iterator traverses the elements in forward direction only whereas ListIterator traverses the elements in forward and backward direction.
No. | Iterator | ListIterator |
---|---|---|
1) | Iterator traverses the elements in forward direction only. | ListIterator traverses the elements in backward and forward directions both. |
2) | Iterator can be used in List, Set and Queue. | ListIterator can be used in List only. |
No. | Iterator | Enumeration |
---|---|---|
1) | Iterator can traverse legacy and non-legacy elements. | Enumeration can traverse only legacy elements. |
2) | Iterator is fail-fast. | Enumeration is not fail-fast. |
3) | Iterator is slower than Enumeration. | Enumeration is faster than Iterator. |
List can contain duplicate elements whereas Set contains only unique elements.
HashSet maintains no order whereas TreeSet maintains ascending order.
Set contains values only whereas Map contains key and values both.
HashSet contains only values whereas HashMap contains entry(key,value). HashSet can be iterated but HashMap need to convert into Set to be iterated.
HashMap maintains no order but TreeMap maintains ascending order.
No. | HashMap | Hashtable |
---|---|---|
1) | HashMap is not synchronized. | Hashtable is synchronized. |
2) | HashMap can contain one null key and multiple null values. | Hashtable cannot contain any null key or null value. |
Collection is an interface whereas Collections is a class. Collection interface provides normal functionality of data structure to List, Set and Queue. But, Collections class is to sort and synchronize collection elements.
No. | Comparable | Comparator |
---|---|---|
1) | Comparable provides only one sort of sequence. | Comparator provides multiple sort of sequences. |
2) | It provides one method named compareTo(). | It provides one method named compare(). |
3) | It is found in java.lang package. | it is found in java.util package. |
4) | If we implement Comparable interface, actual class is modified. | Actual class is not modified. |
If you change the value in properties file, you don‘t need to recompile the java class. So, it makes the application easy to manage.
The hashCode() method returns a hash code value (an integer number).
The hashCode() method returns the same integer number, if two keys (by calling equals() method) are same.
But, it is possible that two hash code numbers can have different or same keys.
The equals method is used to check whether two objects are same or not. It needs to be overridden if we want to check the objects based on property.
For example, Employee is a class that has 3 data members: id, name and salary. But, we want to check the equality of employee object on the basis of salary. Then, we need to override the equals() method.
Yes, Collections class provides methods to make List, Set or Map elements as synchronized:
public static List synchronizedList(List l){} |
public static Set synchronizedSet(Set s){} |
public static SortedSet synchronizedSortedSet(SortedSet s){} |
public static Map synchronizedMap(Map m){} |
public static SortedMap synchronizedSortedMap(SortedMap m){} |
If we use generic class, we don‘t need typecasting. It is typesafe and checked at compile time.
Two different keys with the same hash value is known as hash-collision. Two different entries will be kept in a single hash bucket to avoid the collision.
The Dictionary class provides the capability to store key-value pairs.
The default size of load factor is 0.75. The default capacity is computed as initial capacity * load factor. For example, 16 * 0.75 = 12. So, 12 is the default capacity of Map.
20 Java Collections Interview Questions
标签:swift bsp data style man frame pil example tip
原文地址:https://www.cnblogs.com/vicky-project/p/9349831.html