黒猿の家:Scalaの地図地図

Javaの学習のマップコレクションの類推に学習のこの場所は、することができます。

1、建設不変地図や

val map1 = Map("Alice" -> 10, "Bob" -> 20, "Kotlin" -> 30)

尖叫提示:List和Map默认使用不可变集合,不可变是长度不能变,值也不能改变,Array的不可变是长度不能改变,元素是可以改变的

2、変数マッピングマップの設定

import scala.collection.mutable
val map1 = mutable.Map("Alex" -> 10,"Bob" -> 20,"Kotlin" -> 30)
println(map1)

3、空のHashMapマッピング

val map3 = new scala.collection.mutable.HashMap[String, Int]

4、デュアルタプル

val map4 = Map(("Alice", 10), ("Bob", 20), ("Kotlin", 30))

5、値

マップは値がない場合は、キーがあるかどうかをチェックするための方法が含まれている使用して、例外がスローされます。マッピングに.getによって、このような呼び出し(キー)のいずれかのいくつかの、どちらかなし、オプションのオブジェクトを返していない場合。

val maybeInt1 = map1.get("Alice")//建议使用get方法得到map中的元素
val maybeInt2 = map1("Alice")
println(maybeInt1)
println(maybeInt2)

6、更新された値

//更新值
map1("Alex") = 99
println(map1)

//有key就更新,没有key就添加
map1 += ("Alex" -> 24,"Faker" -> 45)
println(map1)

//删除key
map1 -= ("Bob","Kotlin")
println(map1)

//类似于 +=
val map5 = map1 + ("AAA" -> 10, "BBB" -> 20)
println(map5)

7、マップや違いを集めます

ここでは知識は、経験を理解してください、パターンマッチングで詳細に説明される
マップ内の関数名を収集し、地図のコレクションマッピングは同じものではないこと

println("\n map 和 collect 区别----collect忽略匹配不上的----------------")
val map1 = Map("Alice" -> 20,"Bob" -> 30)
map1.map{case(_,age) => println(age+1)}
map1.map(a => a._2+1)
map1.collect{
   case (_,age) => println(age+1)
}

// List(1,2,3,4,"heihei") map{case i:Int => println(i+1)}
List(1,2,3,4,"heihei") collect {case i:Int => println(i+1)}

ます。https://www.jianshu.com/p/d66033977a10で再現

おすすめ

転載: blog.csdn.net/weixin_34080571/article/details/91182439