hur man skapar en karta i java

Kartan gränssnitt i Java API ger användarna ett enkelt sätt lagra information i så att den kan nås baseras på dess relation till annan information. Det finns totalt nitton implementationer av Map interface i Java 6,0 API , var anpassade till en viss uppgift . Den mest generella av implementationer är HashMap klassen , och det är väl anpassad till de flesta behov för kartan gränssnittet

Du behöver : . .
Java

1

Skapa en Java- fil med namnet MapExample. java . Klistra in följande grundläggande kod i den :

import java . util. Collection ;
import java. util. HashMap ;

/**
* Denna klass kommer att ge ett exempel för MapInterface
* @ author Kevin Walker .
* /
public class MapExample {
/**
* Denna konstruktor metod kommer att utföra några transaktioner med HashMap genomförandet
* av Java Map -gränssnittet så snart som skapade . .
* /
offentliga MapExample () { }

/**
* Den huvudsakliga funktionen startar upp MapExample konstruktorn och ingenting annars
* /
public static void main ( String [ ] args ) {
nytt MapExample () ; }
.
}
2 .
Skapa en HashMap . Lägg till följande rad till MapExample () -konstruktorn metod :

map=new HashMap () ;

Alla implementationer av ” Karta ”interface i Java API knyta uppgifter till en ” nyckel ” representeras av en annan bit av data . Eftersom Map är ett gränssnitt , kan du inte skapa en karta direkt utan bör i stället använda någon av de implementationer som Java API . I detta fall är den enklaste kartan, HashMap , användas.
3 .
Befolka Hashmap . Tillsätt nästa några rader kod till samma metod som tidigare :

karta . sätta ( ” ålder ” , 29 ) ,
map. put ( ” höjd ” , 6,0 ) ;
map. put ( ” förnamn ” , ” Kevin ” ) ;
map. put ( ” Efternamn ” , ” Walker ” ) ;

Som ni kan se , bitar av information, som kallas värden, lagras enligt ett sökord , kallad nyckel . Senare kommer du att kunna hämta information veta bara nyckeln . Det viktigt att komma ihåg att vid lagring av information i en karta, nyckel, alltid kommer först , och värdet kommer alltid andra .
4 .
Hämta information från kartan .

System. out. println (” Förnamn : ” + map. get ( ”förnamn ”));
System. out. println ( ” Efternamn : ” + map. get ( ”Efternamn ”));
System. out. println (” Ålder : ” + map. get ( ” ålder ” ) + ” år ”) ;
System. out. println (” höjden : ”+ map. get ( ” höjd ” ) + ” fötter ” ) .
5
Bygg en begränsad karta . Alla implementationer av Map -gränssnittet kan initieras att kräva vissa typer av uppgifter och inte andra . Lägg till följande rad i samma metod :

Karta limitedMap=new HashMap () ;

I detta exempel är en karta som initieras som kräver en För en nyckel och relaterar det till ett heltal av data . Så , ut i koden :

limitedMap. put ( ” ålder ” , 29 ) ,
limitedMap. put ( ” höjd ” , 6,0 ) ;
limitedMap. put ( ” förnamn ” , ” Kevin ” ) ;
limitedMap. put ( ”Efternamn ” , ” Walker ” ) ;

bara den första raden kommer att fungera. Rad två kommer att orsaka ett kompileringsfel eftersom det är försöker lagra en dubbel i stället för ett heltal . Linjer tre och fyra kommer att orsaka ett kompileringsfel eftersom de försöker att lagra strängar .

tips och varningar

  • Programmerare bekant med begreppet matriser kan tänka Kartor som matriser där data hämtas från en relation med annan information i stället för genom sin position i arrayen . Ett vanligt sätt att komma åt data i en karta är en sträng sökord , men andra relationer är möjliga
  • Kartor inte genomför gränssnittet för insamling , och detta innebär att du inte kan använda ” för ( Objekt x : . Map m ) ” syntax för iteration genom dem .
  • Många av de förvalda implementationer av Map -gränssnittet , inklusive Hashmap klassen , inte upprätthålla ordningen på de givna föremålen. För samlingar av data som måste förbli sortering , anser TreeMap klassen .
  • När man skapar kartor som accepterar endast begränsade värden , primitiver datatyper som ” int ” och ” dubbel ” inte kan användas antingen som nycklar eller värden . Istället måste du använda deras klassbaserade motsvarigheter , ” Integer ” och ” Double ”.
  • Visited 1 times, 1 visit(s) today

    コメント

    タイトルとURLをコピーしました