If elements are added at same bucket location in HashMap then what will be the size of HashMap?

Ads
Ads

If elements are added at same bucket location in HashMap then what will be the size of HashMap?


Prashant k
If elements are added at same bucket location in HashMap then what will be the size of HashMap?
0 Answer(s)      2 years and 6 months ago
Posted in : Java Interview Questions
Ads

I am trying to print the size of HashMap which contains key value pair at same bucket location. Following is the code. Please confirm the answer .

import java.util.HashMap; import java.util.Map;

public class HashcodeWork {

public static void main(String[] args) {

// int i = 34, j =15; // 2 and 18 34 -- bucket is 2 // int k = i & j ; // System.out.println(k); Map<Employee,String> map = new HashMap<Employee, String>(); Employee e1 = new Employee(2,"A"); Employee e3 = new Employee(18,"T"); Employee e5 = new Employee(34,"D"); map.put(e1, "A"); map.put(e3, "G"); map.put(e5, "O"); System.out.println(map + " Size:::: "+map.size());

}

}

class Employee { private Integer empId; private String name ;

public Employee(int i, String string) {
    // TODO Auto-generated constructor stub
    this.empId = i;
    this.name=string;
}
@Override
public boolean equals(Object arg0) {
    // TODO Auto-generated method stub
    Employee e = (Employee) arg0;
    return this.empId.equals(e.empId);
}
@Override
public int hashCode() {
    // TODO Auto-generated method stub
    int bucket = empId.hashCode();
    System.out.println(bucket+" bucket ");
    return bucket;
}

}

/* 2 bucket 18 bucket 34 bucket 2 bucket 18 bucket 34 bucket {[email protected]=A, [email protected]=G, [email protected]=O} Size:::: 3 */

Formula to calculate bucket location. // int i = 34, j =15; // 2 and 18 34 -- bucket is 2 // int k = i & j ; // System.out.println(k);

If this is not the way Java follows to calculate bucket location . I also tried with public int hashCode() { return 2; }

So whats the answer for , if bucket location is same for all the 3 elements then what will be the size of map?

View Answers
Ads