Scala学習のマッピング(Map)
一、マッピングの重点内容:
1.マッピングでは、前の値をキー、後の値を値と呼ぶ
2.マッピングは対偶の集合であり、2つの値からなり、必ずしも同じタイプではない.
3.キークエリでは、マッピングにキーが含まれていない場合、例外が放出されます.
3.関数は通常計算に使用され、マッピングはクエリーに使用されます.
二、使い方
1、可変マッピングを作成する:
2、可変マッピングの作成
3、空マッピングの作成
説明:可変Mapは特質であり、インスタンス化できない(すなわちnewを使用してオブジェクトを作成できない)
4、マッピングの実際の使い方を作成する
前述したように、キークエリを介してキーがマッピングに存在しない場合、次のように例外が放出されます.
したがって、containsメソッドを使用して、キーが存在するかどうかを確認することができます.次のようにします.
またはgetOrElseメソッドを使用して、次のようにします.
5、可変マッピングの方法:
6、反復:
for((k,v)<-マッピング)処理k,v
1.マッピングでは、前の値をキー、後の値を値と呼ぶ
2.マッピングは対偶の集合であり、2つの値からなり、必ずしも同じタイプではない.
3.キークエリでは、マッピングにキーが含まれていない場合、例外が放出されます.
3.関数は通常計算に使用され、マッピングはクエリーに使用されます.
二、使い方
1、可変マッピングを作成する:
Map("A" -> 1)
//
HashMap("A" -> 1)
2、可変マッピングの作成
// mutable Map HasMap
import scala.collection.mutable.Map
Map("A" -> 1)
//
import scala.collection.mutable.HashMap
HashMap("A" -> 1)
3、空マッピングの作成
//1. new
//2.
val scores = new scala.collection.mutable.HashMap[String, Int]
説明:可変Mapは特質であり、インスタンス化できない(すなわちnewを使用してオブジェクトを作成できない)
4、マッピングの実際の使い方を作成する
val capital = Map("China" -> "beijing", "America" -> "Washington", "France" -> "Paris")
val americaCapital = captial("America")
// Washington
前述したように、キークエリを介してキーがマッピングに存在しない場合、次のように例外が放出されます.
val japanCapital = capital("Japan")
//
したがって、containsメソッドを使用して、キーが存在するかどうかを確認することができます.次のようにします.
val japanCapital = if(capital.contains("Japan")) capital("Japan") else ""
またはgetOrElseメソッドを使用して、次のようにします.
val japanCapital = capital.getOrElse("Japan","")
5、可変マッピングの方法:
import scala.collection.mutable.Map
val scores = Map("Alice" -> 1)
// Alice
scores("Alice") = 2
//
scores("Bob") = 3
// Map Map
val newScores = Map("Fred" -> 4)
scores += newScores
//
scores += ("Fred" -> 4)
//
scores -= "Alice"
6、反復:
for((k,v)<-マッピング)処理k,v
//
val myMap = Map("A" -> 1, "B" -> 2, "C" -> 3)
for((k,v) <- myMap) println(k+" "+v)
//
for(k <- myMap.keySet) println(k)
//
for(v <- myMap.values) println(v)
//
for((k,v) <- myMap) yield (v,k)