Koleksi Scala - HashMap

Peta skala adalah kumpulan pasangan kunci / nilai. Nilai apa pun dapat diambil berdasarkan kuncinya. Kunci di Map unik, tetapi nilainya tidak harus unik. HashMap mengimplementasikan peta yang tidak dapat diubah dan menggunakan tabel hash untuk mengimplementasikannya.

Mendeklarasikan Variabel HashMap

Berikut ini adalah sintaks untuk mendeklarasikan variabel HashMap.

Sintaksis

val colors = HashMap("red" -> "#FF0000", "azure" -> "#F0FFFF", "peru" -> "#CD853F")

Di sini, warna dideklarasikan sebagai hash-map dari Strings, Int yang memiliki tiga pasangan nilai kunci. Nilai dapat ditambahkan dengan menggunakan perintah seperti berikut -

Perintah

var myMap1: HashMap[Char, Int] = colors + ("black" -> "#000000");

Memproses HashMap

Di bawah ini adalah contoh program untuk menunjukkan cara membuat, menginisialisasi, dan memproses HashMap -

Contoh

import scala.collection.immutable.HashMap
object Demo {
   def main(args: Array[String]) = {
      var myMap: HashMap[String,String] = HashMap(
         "red" -> "#FF0000", "azure" -> "#F0FFFF", "peru" -> "#CD853F"
      );
      // Add an element
      var myMap1: HashMap[String,String] = myMap + ("white" -> "#FFFFFF");
      // Print key values
      myMap.keys.foreach{ 
         i =>  
         print( "Key = " + i )
         println(" Value = " + myMap(i) )
      }
      if( myMap.contains( "red" )) {
         println("Red key exists with value :"  + myMap("red"))
      } else {
         println("Red key does not exist")
      }
      if( myMap.contains( "maroon" )) {
         println("Maroon key exists with value :"  + myMap("maroon"))
      } else {
         println("Maroon key does not exist")
      }
      //removing element
      var myMap2: HashMap[String,String] = myMap - ("white");
      // Create empty map
      var myMap3: HashMap[String,String] = HashMap.empty[String, String];
      println(myMap1);
      println(myMap2);
      println(myMap3);		  
   }
}

Simpan program di atas dalam Demo.scala. Perintah berikut digunakan untuk mengkompilasi dan menjalankan program ini.

Perintah

\>scalac Demo.scala
\>scala Demo

Keluaran

Key = azure Value = #F0FFFF
Key = peru Value = #CD853F
Key = red Value = #FF0000
Red key exists with value :#FF0000
Maroon key does not exist
HashMap(azure -> #F0FFFF, peru -> #CD853F, white -> #FFFFFF, red -> #FF0000)
HashMap(azure -> #F0FFFF, peru -> #CD853F, red -> #FF0000)
HashMap()