Java HashSet Collection problem

Java HashSet Collection problem

Here's how the HashSet works. It maintains an array of buckets. When an object is inserted, it finds the appropriate bucket corresponding to the objects HashCode. Then it calls the equals method to compare the equality of objects in the bucket.If an equals returns true with any object of the bucket then the new object is not inserted.

Now Here's the situation. There's a class A. Its equals and hashcode method is overridden. equals always returns false and hashcode always returns a single value say 5.

Here's my code.

import java.util.*; public class Prac {

@Override
public int hashCode() {
    return 10;
}



@Override
public boolean equals(Object obj) {
    return false;
}

public static void main(String args[]) {
   HashSet<Prac> hs=new HashSet<Prac>();
   Prac p=new Prac();
   hs.add(p);
   p=new Prac();
   hs.add(p);
   p=new Prac();
   hs.add(p);
   System.out.println(hs.size());
}

}

The output is 3. If I do re-initialize p using p= new Prac() after the first insertion then only once the insertion will take place and the output is 1.

The point is, the hashcode is same and the equals always returns false, so if hs.add(p) is called again without re-initializing variable p, then it should insert the object again. Can anyone tell me the concept behind this??

View Answers

June 16, 2011 at 1:00 PM

In your code, HashSet stores the values of Prac type as you have specified:

HashSet<Prac> hs=new HashSet<Prac>();

So, while adding the object of Prac using add method of hashset, it get stored into hastset.And you have created 3 objects of Prac and stored all of them into same hashset.So it returns 3 when you called size() method of HashSet.









Related Tutorials/Questions & Answers:
Java HashSet Collection problem
Java HashSet Collection problem  Here's how the HashSet works... the concept behind this??   In your code, HashSet stores the values...;Prac>(); So, while adding the object of Prac using add method of hashset, it get
Java collection HashSet
Java collection HashSet  How can we use HashSet in java program?   The hashSet class is used to create a collection and store it in a hash table. Each collection refer to a unique value. import java.util.Collections
Advertisements
Java collection HashSet and TreeSet
Java collection HashSet and TreeSet   How can we used HashSet... two subclasses HashSet and TreeSet. Now using the add() method, we have added elements to HashSet. Set does not accept duplicate values. So here we have checked
What is HashSet in java
In following example we will discuss about HashSet in Java. The HashSet class... add(), remove(),size() and test the element of the collection. The HashSet...( ) HashSet(Collection x) HashSet(int capacity) The HashSet() constructor
Example of HashSet class in java
Example of HashSet class in java. In this part of tutorial, we will introduce you to about the HashSet class.  It is collection. It stores only unique. You can not store duplicate value. Java hashset example. How
Java HashSet  - Java Tutorials
Java Collections Framework- HashSet Class A HashSet is a collection set... HashSet( )   HashSet(Collection c) HashSet(int capacity) HashSet(int... a collection that uses a hash table for storage. Hash table stores information by using
Java hashset example.
Java hashset example.     HashSet is a collection. You can not store duplicate value in HashSet. In this java hashset exmple, you will see how to create HashSet in java application and how to store value in Hashset
Collection : HashSet Example
Collection : HashSet Example This tutorial contains description of HashSet with example. HashSet  : HashSet class extends AbstractSet class... is HashSet() example - package collection; import java.util.HashSet
struts collection problem in Mozilla
struts collection problem in Mozilla   I used the to get list of records, if records are more than 15-20 then this is not seen properly with vertical scroll bar on Mozilla. Plz help me
program for HashSet - Java Beginners
of HashSet. can u please suggest me a way out.  Hi friend, A set is a collection interface. It is connot contain any dublicate element. The Set and SortedSet intefaces describe the properties of sets and the HashSet
Example of Hashset size() method in java.
Example of Hashset size() method in java. The size() is a method of HashSet class. It is used to calculte the size of HashSet. The size of method is equal to total number of elements in HashSet Code: 
Example of contains method of hashset in java.
Example of contains method of hashset in java. The contains() is a method of hashset. It is used for checking that the given number is available in hashset or not. It returns only boolean value.If number is present in hashset
HASHSET - Java Interview Questions
HASHSET  How To Sort HashSet?I Want Source Code?   Hi Friend, Try the following code: import java.util.*; public class HashSetExample{ public static void main (String args[]){ Set set = new HashSet
Example of Hashset iterator method in java.
Example of Hashset iterator method in java. In this exmple of HashSet class... element from HashSet. Code:  HashSetRemoveElement.java package... || []).push({}); HashSet obHashSet = new HashSet(); obHashSet.add(new
HashMap/HashSet - Java Beginners
HashMap/HashSet  im working on a game, and i want to know how does the code for HashMap and HashSet work or can you give me the code that needs to be included in the game engine. I have the exam on monday. Can you please help
HashSet In Java
HashSet In Java In this section we will read about HashSet in Java. HashSet... HashSet(Collection c); HashSet hs2 = new HashSet(int intialCapacity); HashSet..._TO_REPLACE_2 HashSet hs = new HashSet(); HashSet hs1 = new HashSet(Arrays.asList(?Java
Example of toArray() method of hashset in java.
Example of toArray() method of hashset in java. The toArray() is a method of HashSet in java. It is used to create array of object. It is also used to copy all element of hashset into array of object. Code: 
Scrollbar problem with struts <layout:collection>
Scrollbar problem with struts   How activate the vertical scrollbar in struts in mozilla firefox
Java Collection
Java Collection  What is the Collection interface
HashSet Example
the methods to add, remove and iterate the values of collection. A HashSet... we are performing various operations on HashSet collection. We have explained... the HashSet declaration and constructor to a Vector as it supports the collection
Java collection
Java collection  What are differences between Enumeration, ArrayList, Hashtable and Collections and Collection
Collection in java
Collection in java  What are the meaning of the letters E,T,K and V that come in the collection concept
Java collection LinkedHashSet
Java collection LinkedHashSet  How can we use LinkedHashSet in java collection?   import java.util.Iterator; import...("HashSet"); ht.add('R'); ht.add("List"); ht.remove
Java Collection
Java Collection  What are Vector, Hashtable, LinkedList and Enumeration
Java collection
Java collection  What is relation between map and set
Java collection
Java collection  What are differences between Enumeration, ArrayList, Hashtable and Collections
java collection
java collection  how do I use a treeset to print unique words
Java Collection API - Java Tutorials
Java Collection API Collection was added to Java with J2SE 1.2 release. Collection framework is provided in 'java.util.package'. All collections... implementations of the collection interfaces. Also, they are reusable data structures
java collection - Development process
java collection - creating and comparing lists using Java  How to compare two list in java? and i have to create two more list from old two list. Comparing and Creating new list in Java Java Example code for creating
Java garbage collection
Java garbage collection  What is Garbage Collection and how to call it explicitly
Collection classes in java
is the reason using java collection classes saved/stored the data/content.I don't understand, what is the idea using java collection classes in project. Or the data is stored in both database and java collection classes
Collection classes in java
is the reason using java collection classes saved/stored the data/content.I don't understand, what is the idea using java collection classes in project. Or the data is stored in both database and java collection classes
collection
collection  As we know array holds the similar kind of elements, then in collection how toArray() method will convert the collection having different objects as elements to an array in java
Filter collection in Java 8
Filter collection in Java 8  Hi, I have following collection..., Example of Filter collection in Java 8 You can use the following code in Java 8... the data not containing "Java". Thanks   Hi, We have huge collection
garbage collection implementation dependent java
garbage collection implementation dependent java  How a garbage collection works in Java
Java collection -Hashtable
Java collection -Hashtable   What is Hashtable in java collection?   Java collection -Hashtable;- The hashtable is used to store value in the form of map key with value. import java.util.Hashtable; import
Java collection-LinkedList
Java collection-LinkedList  How to use java collection-linked list ?   Example: import java.util.Iterator; import java.util.LinkedList; import java.util.List; public class LinkedListExample{ public static void
Collection Framework - Java Beginners
Collection Framework  Pls explain the disadvantages of using collection framework as it was written in this forum ? It must cast to correct type. ? Cannot do compile time checking. I couldnot get in detail as to what
Collection
Collection  What is the exact difference between lagacy classes and collection classes? and Enumeration is possible on Collection classes
How to convert Collection to Array in Java?
How to convert Collection to Array in Java?  Hello, I have a collection object in data with data in it. How to convert Collection to Array in Java... to Array in Java. Here is the code for converting Collection to Array: String
garbage collection - Java Beginners
of memory.It identifies the objects that are no longer used by a program. A Java object is subject to garbage collection when it becomes unreachable to the program..."algorithms.Instead of "destructor" in c++ , java supports garbage collector
Java collection Queue Example
Java collection Queue Example  How can we use Queue in java collection?   import java.util.LinkedList; import java.util.Queue; public... LinkedList(); queue.add("Java"); queue.add("DotNet
Java Collection-TreeSet
Java Collection-TreeSet  What is TreeSet in Java Collection?   Example: import java.util.Iterator; import java.util.TreeSet; public class TreeSetExample{ public static void main(String [] args
Java collection Stack example
Java collection Stack example  How to use Stack class in java collection?   The Stack class uses the First In Last Out(FILO) mechanism... :- -1 Description:- The above example demonstrates you the Stack class in java
Java collection Vector
Java collection Vector  How can we use the vector class in java program?   The vector class is similar to the ArrayList class except that the vector class is synchronized. import java.util.Iterator; import
What is garbage collection? - Java Beginners
. How garbage collection works in java? Thanks   Garbage Collection in Java In Java when program executes the JVM creates the object... in Java. Check the garbage collection code at http://www.roseindia.net/answers
collection
, Hashtable and Collections and Collection?   Enumeration : It is series... : It is re-sizable array implementation. Belongs to 'List' group in collection... Map in collection. Collections : It implements Polymorphic algorithms which
Java Collection iterator with example
The Java Collection Iterator is present at the highest level interface in the Collection framework. Iterator interface has methods for traversing.... Example of Java Collection Iterator import java.util.ArrayList; import
Collection framework
Example!\n" ); //int size; HashSet collection = new HashSet(); String str1...; HashSet collection = new HashSet(); String str1 = "Y",str2 = "W", str3...Collection framework  import java.util.*; public class CollectFrame
Collection
Collection  actually why do we need collections? means we can also store group of objects in relational data base and dbms also provides all the operatoins insert,delete,update,sort,search etc. then why collection

Ads