Kā Java karšu saskarni ieviest?



Šis raksts par Java Map Inteface palīdzēs jums saprast, kā Map darbojas Java, un iepazīstinās jūs ar dažādām klasēm, kurās tiek ieviesta Map Interface

Viena no interesantākajām Java tēmām ir kartes saskarne, kasapzīmē atslēgas un vērtības kartēšanu.Bieži tiek nepareizi saprasts, ka tas ir saskarne Java.Šis raksts par Java kartes saskarni palīdzēs jums saprast un apgūt kartes darbību .

Tālāk ir uzskaitītas šajā rakstā aplūkotās tēmas:





Java kartes saskarne

Java karte ir objekts kas attēlo atslēgas vērtībām un ir paredzēts ātrākai meklēšanai. Dati tiek glabāti atslēgu vērtību pāros, un katra atslēga ir unikāla. Katrs taustiņš piesaista vērtību, līdz ar to arī nosaukuma karte. Šos atslēgu un vērtību pārus sauc par kartes ierakstiem.

Kartes Java valodā - Java kartes saskarne - Edureka



Iekš , java.util.Karte ir kas ietver metodes parakstus elementu ievietošanai, noņemšanai un iegūšanai, pamatojoties uz atslēgu. Izmantojot šādas metodes, tas ir ideāls līdzeklis, lai izmantotu galveno vērtību asociācijas kartēšanu, piemēram, vārdnīcas.

Kartes saskarnes raksturojums

  • Kartes saskarne nav patiess kolekcijas saskarnes apakštips, tāpēctā īpašības un uzvedība atšķiras no pārējiem kolekcijas veidiem.
  • Tas nodrošinatrīs kolekcijas skati - atslēgu kopa, atslēgu vērtību kartējumu kopa un vērtību kolekcija.
  • TOKartenedrīkst saturēt atslēgu dublikātus, un katra atslēga var kartēt līdz vienai vērtībai. Dažas ieviešanas atļauj nulles atslēgu un nulles vērtību ( HashMap un LinkedHashMap ) bet daži to nedara ( TreeMap).
  • Kartes saskarne negarantē kartējumu secību, tomēr tas ir atkarīgs no ieviešanas. Piemēram, HashMap negarantē kartējumu kārtību, bet TreeMap dara.
  • AbstractMap klase nodrošina Java Map saskarnes skeleta ieviešanu un lielāko daļu Map betona klases paplašināt AbstractMap klasi un ieviest nepieciešamās metodes.

Tagad, kad jums ir ideja par kartes saskarni ir, iesim uz priekšu un pārbaudiet Java Map hierarhiju.

Java karšu hierarhija

Ir divas saskarnes, kas Java ievieš karti: Map un SortedMap. Un populāras Map Java ieviešanas klases ir HashMap, TreeMap , un LinkedHashMap. Java kartes hierarhija ir norādīta zemāk:



Pirms mēs pārbaudām trīs iepriekš minētās Java Map interfeisa ieviešanas klases, šeit ir dažas izplatītākās metodes, ar kurām jūs varat saskarties, strādājot ar Map.

Metodes Java kartes saskarnē

Metodes

Apraksts

public put (Object key, Object value)Šī metode ievieto ierakstu kartē
publiskivoid putAll (Kartes karte)Šī metode ievieto norādīto karti šajā kartē
publisks objekts noņemt (objekta atslēga)To izmanto, lai dzēstu ierakstu par norādīto atslēgu
public Set KeySet ()Tas atgriež skatu Iestatīt, kurā ir visi taustiņi
public SetSet ()Tas atgriež skatu Iestatīt, kurā ir visas atslēgas un vērtības
anulēt skaidru ()To izmanto kartes atiestatīšanai
public void putIfAbsent (K atslēga, V vērtība)Tas ievieto norādīto vērtību ar norādīto atslēgu kartē tikai tad, ja tā vēl nav norādīta
publiskā objekta iegūšana (objekta atslēga)Tas atgriež norādītās atslēgas vērtību
publiskā Būla satur Key (Objekta atslēga)
To izmanto, lai meklētu norādīto atslēgu no šīs kartes

Kartes ieviešana

Ir vairāki kas ievieš Java kartibet trīs galvenās un vispārējas nozīmes realizācijas irHashMap, TreeMap un LinkedHashMap.Apskatīsim katras ieviešanas īpašības un uzvedību ar piemēru

HashMap klase

Visizplatītākā klase, kas ievieš Java Map saskarni, ir HashMap. Tas ir hash tabulas pamatā Map interfeisa ieviešana.Tas īsteno visas kartes darbībasun pieļauj nulles vērtības un vienu nulles atslēgu. Arī šī klase neuztur nekādu kārtību starp tās elementiem. Šeit ir piemērs programmai, kas demonstrē HashMap klasi.

pakete MyPackage import java.util. * klase HashMapExample {public static void main (String [] args) {Kartes kursi = jauns HashMap () // Pievienojiet dažus kursus. kursi.put ('Java kursi', jauns vesels skaitlis (6)) kursi.put ('Mākoņu kursi', jauns vesels skaitlis (7)) kursi. ievade ('Programmēšanas kursi', jauni veseli skaitļi (5)) kursi.put (' Datu zinātnes kursi ', jauns Integer (2)) System.out.println (' Kopā kursi: '+ kursi.size ())st = courses.entrySet () priekš [Map.Entry me: st] {System.out.print (me.getKey () + ':') System.out.println (me.getValue ())} System.out. println () virkne searchKey = 'Java kursi' if (courses.containsKey (searchKey)) System.out.println ('Atrasts kopā' + kursi.get (searchKey) + '' + searchKey)}}

Rezultāts

Kopā kursi: 4 mākoņu kursi: 7 programmēšanas kursi: 5 datu zinātnes kursi: 2 Java kursi: 6 atrasti kopā 6 Java kursi

Iepriekš minētajā programmā esmu izmantojis daudzas tabulā minētās metodes. Pirmkārt, likt () metode ievieto kartē 4 ierakstus un Izmērs() metode nākamajā solī parāda kartes lielumu (kopējos atslēgu un vērtību pārus). Pēc tam nākamajā solī entrySet () metode atgriež visus atslēgu un vērtību pārus. Programma arī parāda, kā to izmantot gūt() metode vērtības meklēšanai, izmantojot saistīto atslēgu.

Pārejam uz nākamo klasi, kas ievieš Java kartes saskarni - TreeMap.

TreeMap klase

Šajā ieviešanā kā pamats tiek izmantots sarkan-melnais koks datu struktūra . TreeMap tiek sakārtots atbilstoši to atslēgu dabiskajam secībai vai pēc izveides laikā pieejamā salīdzinātāja. Šī ieviešana neatļauj nulles, bet uzturkārtību tās elementos. Šeit ir programmas piemērs, kas demonstrē TreeMap klasi.

pakete MyPackage import java.util. * klase TreeMapEx {public static void main (String [] args) {Kartes kursi = jauns TreeMap () // Pievienojiet dažus kursus. kursi.put ('Java kursi', jauni veseli skaitļi (3)) kursi.put (ievada 'AWS kursi, jauni veseli skaitļi (7)) kursi.put (' Programmēšanas kursi ', jauni veseli skaitļi (8)) kursi.put (' Datu zinātnes kursi ', jauns Integer (2)) System.out.println (' Kopā kursi: '+ kursi.size ()) Komplektsst = courses.entrySet () priekš [Map.Entry me: st] {System.out.print (me.getKey () + ':') System.out.println (me.getValue ())} System.out. println ()}}

Rezultāts

Kopā kursi: 4 AWS kursi: 7 Datu zinātnes kursi: 2 Java kursi: 3 Programmēšanas kursi: 8

Izejā kartes elementi tiek drukāti stingrā leksikogrāfiskā secībā, kas iepriekšējos HashMap piemēros neparādās. Nākamā klase, kuru mēs apspriedīsim, ir LinkedHashMap .

LinkedHashMap klase

Tā kā nosaukums norāda, Java Java saskarnes ieviešana kā atsauces datu struktūras izmanto jaukšanas tabulu un saistītu sarakstu. Tādējādi LinkedHashMap secība irparedzams, kā noklusējuma secību ir ievietošanas secība. Atļauj arī tādas nulles kā HashMap. Šeit ir programmas piemērs, kas demonstrē TreeMap klasi.

pakete MyPackage import java.util. * public class LinkedHashMapExample {public static void main (String a []) {LinkedHashMap courses = new LinkedHashMap () courses.put ('Java Courses', new Integer (3)) courses.put (' Mākoņu kursi ”, jauni veseli skaitļi (7)) kursi. Ievade (“ Programmēšanas kursi ”, jauni veseli skaitļi (8)) kursi. Ievade (“ Datu zinātnes kursi ”, jauns vesels skaitlis (2)) // Tas izdrukā elementus vienā secībā // kad tie tika ievietoti System.out.println (kursi) System.out.println ('Kopā kursi:' +kursi.size ()) System.out.println ('Satur atslēgu' Hadoop '?' + courses.containsKey ('Hadoop')) System.out.println ('Vērtības iegūšana atslēgām' Programmēšanas kursi ':' + courses.get ('Programmēšanas kursi')) System.out.println ('Vai karte ir tukša?' + Kursi.isEmpty ()) System.out.println ('dzēst elementu' Cloud Courses ':' + courses.remove ('Cloud Courses')) System.out.println (Courses)}}

Rezultāts

kā izmantot failu Java
{Java kursi = 3, mākoņu kursi = 7, programmēšanas kursi = 8, datu zinātnes kursi = 2} Kursu kopskaits: 4 Satur taustiņu 'Hadoop'? false Gūstot vērtību atslēgas 'Programmēšanas kursi': 8 Vai karte ir tukša? viltus dzēšanas elements 'Mākoņu kursi': 7 {Java kursi = 3, programmēšanas kursi = 8, datu zinātnes kursi = 2}

Programmas piemērs ir diezgan vienkārši saprotams. Esmu izmantojis dažas pamata metodes, lai parādītu LinkeHashMap darbību Java. Kā jau teicu iepriekš, tur, izņemot šīs trīs, ir daudz citu klašu, kas ievieš Java Map saskarni.

Tas mūs noved pie šī raksta “Java Map Interface” beigām. Esmu apskatījis vienu no interesantajām Java tēmām, kas ir Map interfeiss Java.

Pārliecinieties, ka pēc iespējas vairāk praktizējat, un atgriezieties savā pieredzē.

Pārbaudiet Autors: Edureka, uzticams tiešsaistes mācību uzņēmums ar vairāk nekā 250 000 apmierinātu izglītojamo tīklu visā pasaulē. Mēs esam šeit, lai palīdzētu jums katrā solī jūsu ceļojumā, lai kļūtu par papildus šiem Java intervijas jautājumiem, mēs piedāvājam mācību programmu, kas paredzēta studentiem un profesionāļiem, kuri vēlas būt Java izstrādātāji.

Vai mums ir jautājums? Lūdzu, pieminējiet to šīs ‘Java kartes saskarnes’ komentāru sadaļā rakstu, un mēs pēc iespējas ātrāk sazināsimies ar jums.