Java Hashtable-klassen implementerer en hashtabell, som kartlegger nøkler til verdier. Den arver Ordbok-klassen og implementerer kartgrensesnittet.
Poeng å huske
- En hashtabell er en rekke av en liste. Hver liste er kjent som en bøtte. Posisjonen til bøtten identifiseres ved å kalle hashcode()-metoden. En hashtabell inneholder verdier basert på nøkkelen.
- Java Hashtable-klassen inneholder unike elementer.
- Java Hashtable-klassen tillater ikke nullnøkkel eller verdi.
- Java Hashtable-klassen er synkronisert.
- Den opprinnelige standardkapasiteten til Hashtable-klassen er 11, mens loadFactor er 0,75.
Hastbar klasseerklæring
La oss se erklæringen for java.util.Hashtable-klassen.
public class Hashtable extends Dictionary implements Map, Cloneable, Serializable
Hashtable klasseparametere
La oss se parameterne for java.util.Hashtable-klassen.
Konstruktører av Java Hashtable-klassen
Konstruktør | Beskrivelse |
---|---|
hashable() | Det oppretter en tom hashtabell med den opprinnelige standardkapasiteten og belastningsfaktoren. |
Hastbar (int kapasitet) | Den godtar en heltallsparameter og oppretter en hashtabell som inneholder en spesifisert startkapasitet. |
Hastbar (int kapasitet, flytende loadFactor) | Den brukes til å lage en hash-tabell med spesifisert startkapasitet og loadFactor. |
Hashtable(Kart t) | Den oppretter en ny hash-tabell med de samme tilordningene som det gitte kartet. |
Metoder for Java Hashtable-klassen
Metode | Beskrivelse |
---|---|
void clear() | Den brukes til å tilbakestille hashtabellen. |
Objekt klone() | Den returnerer en grunn kopi av hashtabellen. |
V compute (K-tast, BiFunction remappingFunction) | Den brukes til å beregne en tilordning for den angitte nøkkelen og dens gjeldende tilordnede verdi (eller null hvis det ikke er noen gjeldende tilordning). |
V computeIfAbsent(K-tast, FunksjonsmappingFunction) | Den brukes til å beregne verdien ved hjelp av den gitte tilordningsfunksjonen, hvis den angitte nøkkelen ikke allerede er assosiert med en verdi (eller er tilordnet til null), og legger den inn i dette kartet med mindre null. |
V computeIfPresent(K-tast, BiFunction remappingFunction) | Den brukes til å beregne en ny tilordning gitt nøkkelen og dens nåværende tilordnede verdi hvis verdien for den angitte nøkkelen er tilstede og ikke er null. |
Oppregningselementer() | Den returnerer en oppregning av verdiene i hash-tabellen. |
Sett | Den returnerer en sett visning av kartene i kartet. |
boolsk lik(Objekt o) | Den brukes til å sammenligne det angitte objektet med kartet. |
void forEach (BiConsumer-handling) | Den utfører den gitte handlingen for hver oppføring i kartet til alle oppføringer er behandlet eller handlingen gir et unntak. |
V getOrDefault(Objektnøkkel, V defaultValue) | Den returnerer verdien som den angitte nøkkelen er tilordnet til, eller standardverdi hvis kartet ikke inneholder noen tilordning for nøkkelen. |
int hashCode() | Den returnerer hash-kodeverdien for kartet |
Opptellingsnøkler() | Den returnerer en oppregning av nøklene i hashtabellen. |
Sett keySet() | Den returnerer en Set-visning av nøklene på kartet. |
V flette (K-tast, V-verdi, BiFunction remappingFunction) | Hvis den angitte nøkkelen ikke allerede er assosiert med en verdi eller er assosiert med null, knytter den til den gitte ikke-nullverdien. |
V put(K-tast, V-verdi) | Den setter inn den angitte verdien med den angitte nøkkelen i hash-tabellen. |
void putAll(Kart t)) | Den brukes til å kopiere alle nøkkelverdi-parene fra kart til hashtabell. |
V putIfFraværende(K-nøkkel, V-verdi) | Hvis den angitte nøkkelen ikke allerede er assosiert med en verdi (eller er tilordnet til null), knytter den til den gitte verdien og returnerer null, ellers returnerer den gjeldende verdien. |
boolsk fjern (objektnøkkel, objektverdi) | Den fjerner de angitte verdiene med de tilhørende spesifiserte nøklene fra hashtabellen. |
V erstatte (K-tast, V-verdi) | Den erstatter den angitte verdien for en spesifisert nøkkel. |
boolsk erstatt (K-tast, V oldValue, V newValue) | Den erstatter den gamle verdien med den nye verdien for en spesifisert nøkkel. |
void replaceAll (BiFunction-funksjon) | Den erstatter hver oppførings verdi med resultatet av å påkalle den gitte funksjonen på den oppføringen til alle oppføringer er behandlet eller funksjonen gir et unntak. |
String toString() | Den returnerer en strengrepresentasjon av Hashtable-objektet. |
Samlingsverdier() | Den returnerer en samlingsvisning av verdiene i kartet. |
boolsk inneholder(objektverdi) | Denne metoden returnerer true hvis en verdi lik verdien finnes i hash-tabellen, ellers returnerer false. |
boolean containsValue(Objektverdi) | Denne metoden returnerer true hvis en verdi lik verdien finnes i hash-tabellen, ellers returnerer false. |
boolean containsKey(Objektnøkkel) | Denne metoden returnerer true hvis en nøkkel lik nøkkelen finnes i hashtabellen, ellers returnerer false. |
boolsk er tom() | Denne metoden returnerer true hvis hash-tabellen er tom; returnerer usann hvis den inneholder minst én nøkkel. |
beskyttet void rehash() | Den brukes til å øke størrelsen på hash-tabellen og rehasher alle nøklene. |
V get (objektnøkkel) | Denne metoden returnerer objektet som inneholder verdien knyttet til nøkkelen. |
V fjern (objektnøkkel) | Den brukes til å fjerne nøkkelen og dens verdi. Denne metoden returnerer verdien knyttet til nøkkelen. |
int størrelse() | Denne metoden returnerer antall oppføringer i hash-tabellen. |
Java hashable eksempel
import java.util.*; class Hashtable1{ public static void main(String args[]){ Hashtable hm=new Hashtable(); hm.put(100,'Amit'); hm.put(102,'Ravi'); hm.put(101,'Vijay'); hm.put(103,'Rahul'); for(Map.Entry m:hm.entrySet()){ System.out.println(m.getKey()+' '+m.getValue()); } } }Test det nå
Produksjon:
103 Rahul 102 Ravi 101 Vijay 100 Amit
Java-hashtable-eksempel: remove()
import java.util.*; public class Hashtable2 { public static void main(String args[]) { Hashtable map=new Hashtable(); map.put(100,'Amit'); map.put(102,'Ravi'); map.put(101,'Vijay'); map.put(103,'Rahul'); System.out.println('Before remove: '+ map); // Remove value for key 102 map.remove(102); System.out.println('After remove: '+ map); } }
Produksjon:
Before remove: {103=Rahul, 102=Ravi, 101=Vijay, 100=Amit} After remove: {103=Rahul, 101=Vijay, 100=Amit}
Java Hashtable Eksempel: getOrDefault()
import java.util.*; class Hashtable3{ public static void main(String args[]){ Hashtable map=new Hashtable(); map.put(100,'Amit'); map.put(102,'Ravi'); map.put(101,'Vijay'); map.put(103,'Rahul'); //Here, we specify the if and else statement as arguments of the method System.out.println(map.getOrDefault(101, 'Not Found')); System.out.println(map.getOrDefault(105, 'Not Found')); } }
Produksjon:
Vijay Not Found
Java-hashtable-eksempel: putIfAbsent()
import java.util.*; class Hashtable4{ public static void main(String args[]){ Hashtable map=new Hashtable(); map.put(100,'Amit'); map.put(102,'Ravi'); map.put(101,'Vijay'); map.put(103,'Rahul'); System.out.println('Initial Map: '+map); //Inserts, as the specified pair is unique map.putIfAbsent(104,'Gaurav'); System.out.println('Updated Map: '+map); //Returns the current value, as the specified pair already exist map.putIfAbsent(101,'Vijay'); System.out.println('Updated Map: '+map); } }
Produksjon:
Initial Map: {103=Rahul, 102=Ravi, 101=Vijay, 100=Amit} Updated Map: {104=Gaurav, 103=Rahul, 102=Ravi, 101=Vijay, 100=Amit} Updated Map: {104=Gaurav, 103=Rahul, 102=Ravi, 101=Vijay, 100=Amit}
Java Hashable Eksempel: Bok
import java.util.*; class Book { int id; String name,author,publisher; int quantity; public Book(int id, String name, String author, String publisher, int quantity) { this.id = id; this.name = name; this.author = author; this.publisher = publisher; this.quantity = quantity; } } public class HashtableExample { public static void main(String[] args) { //Creating map of Books Map map=new Hashtable(); //Creating Books Book b1=new Book(101,'Let us C','Yashwant Kanetkar','BPB',8); Book b2=new Book(102,'Data Communications & Networking','Forouzan','Mc Graw Hill',4); Book b3=new Book(103,'Operating System','Galvin','Wiley',6); //Adding Books to map map.put(1,b1); map.put(2,b2); map.put(3,b3); //Traversing map for(Map.Entry entry:map.entrySet()){ int key=entry.getKey(); Book b=entry.getValue(); System.out.println(key+' Details:'); System.out.println(b.id+' '+b.name+' '+b.author+' '+b.publisher+' '+b.quantity); } } }
Produksjon:
3 Details: 103 Operating System Galvin Wiley 6 2 Details: 102 Data Communications & Networking Forouzan Mc Graw Hill 4 1 Details: 101 Let us C Yashwant Kanetkar BPB 8