HashMap
HashMap implements Map interface which maps key to value.It is not synchronized and is not thread safe.Duplicate keys are not allowed and null keys as well as values are allowed. For more details, you can also read How HashMap works in java.view plainprint?
- HashMap<Interger,String> employeeHashmap=new HashMap<Integer,String>();
- employeeHashmap.put(1,”Arpit”);
- employeeHashmap.put(2,”John”);
HashSet
HashSet implements Set interface which does not allow duplicate value.It is not synchronized and is not thread safe.For more details, you can also read How HashSet works in java.view plainprint?
- HashSet<String> employeeSet=new HashSet<String>();
- employeeSet.add(“Arpit”);
- employeeSet.add(“Arpit”);
- employeeSet.add(“john”);
add method is used to add element to HashSet.If It return true then element is added successfully but if it return false then you are trying to insert duplicate value.
view plainprint?
- public boolean add(Object o)
HashMap vs HashSet:
| Parameter | HashMap | HashSet |
| Interface | This is core difference among them.HashMap implements Map interface | HashSet implement Set interface |
| Method for storing data | It stores data in a form of key->value pair.So it uses put(key,value) method for storing data | It uses add(value) method for storing data |
| Duplicates | HashMap allows duplicate value but not duplicate keys | HashSet does not allow duplicate values. |
| Performance | It is faster than hashset as values are stored with unique keys | It is slower than HashMap |
| HashCode Calculation | In hash map hashcode value is calculated using key object | In this,hashcode is calculated on the basis of value object.Hashcode can be same for two value object so we have to implement equals() method.If equals() method return false then two objects are different. |
No comments:
Post a Comment