Creating a Hash Table : Java Util

This section explains the implementation of the hash table. What is the hash table
and how to create that? Hash Table holds the records according to the unique key
value. It stores the non-contiguous key for several values. Hash Table is
created using an algorithm (hashing function) to store the key and value
regarding to the key in the hash bucket. If you want to store the value for the
new key and if that key is already exists in the hash bucket then the situation
known as collision occurs which is the problem in the hash table i.e. maintained
by the hashing function. The drawback is that hash tables require a little bit
more memory, and that you can not use the normal list procedures for working
with them.
This program simply asks you for the number of entries which have to entered
into the hash table and takes one-by-one key and it's value as input. It shows
all the elements with the separate key.
Code Description:
Hashtable<Integer, String> hashTable = new Hashtable<Integer, String>():
Above code creates the instance of the Hashtable class. This code is
using the type checking of the elements which will be held by the hash table.
hashTable.put(key, in.readLine()):
Above method puts the values in the hash table regarding to the unique key.
This method takes two arguments in which, one is the key and another one is the
value for the separate key.
Map<Integer, String> map = new TreeMap<Integer, String>(hashTable):
Above code creates an instance of the TreeMap for the hash table
which name is passed through the constructor of the TreeMap class. This
code creates the Map with the help of the instance of the TreeMap class. This
map has been created in the program for showing several values and it's separate
key present in the hash table. This code has used the type checking.
Here is the code of the program:
import java.util.*;
import java.io.*;
public class HashTable{
public static void main(String[] args) throws IOException{
int key;
try{
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
System.out.print("How many elements you want to enter to the hash table : ");
int n = Integer.parseInt(in.readLine());
Hashtable<Integer, String> hashTable = new Hashtable<Integer, String>();
for(int i = 0; i < n; i++){
System.out.print("Enter key for the hash table : ");
key = Integer.parseInt(in.readLine());
System.out.print("Enter value for the key : ");
hashTable.put(key, in.readLine());
}
Map<Integer, String> map = new TreeMap<Integer, String>(hashTable);
System.out.println(map);
}
catch(NumberFormatException ne){
System.out.println(ne.getMessage() + " is not a legal value.");
System.out.println("Please enter a numeric value.");
System.exit(1);
}
}
}
|
Download this example.

|