1. 程式人生 > >scala中Map集合的簡單使用

scala中Map集合的簡單使用

import scala.collection.mutable

/**

  • Map集合的簡單使用
    */
    object MapUse {
    def main(args: Array[String]): Unit = {

    // 建立一個空的map – 注意:這裡要用實現類,因為Map是抽象類,使用時需要宣告具體實現類
    val emptyMap = new mutable.HashMapString,Int
    println(emptyMap) // Map()

    // 不可變Map
    val immutableMap = Map(“Jim” -> 22, “yxj” -> 32)
    println(immutableMap)
    //immutableMap(“yxj”) = 33
    // Error:(9, 5) value update is not a member of scala.collection.immutable.Map[String,Int]
    // immutableMap(“yxj”) = 33

    // 建立可變的map
    val ages = scala.collection.mutable.Map(“jim” -> 20, “link” -> 33)
    println(ages)
    // 可以正常修改
    ages(“jim”) = 30
    println(ages)

    // 獲取一個key 33
    println(ages(“link”))

    // 獲取不存在的key會報異常 Exception in thread “main” java.util.NoSuchElementException: key not found: yxj
    //println(ages(“yxj”))
    // 可以使用contains方法
    val yxj = if(ages.contains(“yxj”)) ages(“yxj”) else 0
    println(yxj) // 列印 0
    // 更好的方法是使用函式: getOrElse
    val wll = ages.getOrElse(“wulanlan” , 1)
    println(wll) // 列印 1

    // 修改 不可變map
    val maps = immutableMap + (“yxj”-> 33)
    println(maps) // 列印 Map(Jim -> 22, yxj -> 33)

    val map = immutableMap - “Jim”
    println(map)

    // map的遍歷,遍歷所有的
    for ((key , value) <- ages){
    println(key + “:” + value)
    }

    // 遍歷key
    for(key <- ages.keySet){
    println(“key=” + key)
    }

    // 遍歷 value
    for( value <- ages.values) {
    println(“value=” + value)
    }
    }

}

相關推薦

scalaMap集合簡單使用

import scala.collection.mutable /** Map集合的簡單使用 */ object MapUse { def main(args: Array[String]): Unit = { // 建立一個空的map – 注意:這裡要用

scalalist集合的操作與總結

unit flat script red char cte 條件 atm pan /** * Created by root * Description : List */ object ListTest { def main(args: Array[

scala List的簡單使用

main 列表 fix decorator head != 簡單 mut println /** * scala 中List的使用 * */ object ListUse { def main(args: Array[String]): Unit =

scala函數簡單使用記錄

introduce main 函數 true mys light str evel print object funcHighLevel { def main(args: Array[String]): Unit = { // 創建一個匿名函數 va

javaMap集合的常用方法

try con equals img all sem java 常用 strong Map集合和Collection集合的區別 Map集合是有Key和Value的,Collection集合是只有Value。 Collection集合底層也是有Key和Value,只是隱藏起來

ScalafoldLeft的簡單使用總結

Scala中foldLeft的簡單使用總結 由於工作需要,博主在寫spark相關業務程式碼時用到foldLeft,經過一番搜尋發現很多文章對這個函式的講解,於初學者來說不好理解,特此我來做個簡單易懂的分析總結,供大家參考。 若發現理解上的偏差,還請多指教。 原始碼分析 def

Scala集合

 作者:林偉兵,叩丁狼教育高階講師,原創文章,未經同意不得隨意轉載 1. 定長陣列 陣列的建立: //通過指定陣列長度來建立陣列,系統會為其賦上預設的值 scala> new ArrayString res0: Array[String] = Array(null, nu

Javamap集合系列原理剖析

看了下JAVA裡面有HashMap、Hashtable、HashSet三種hash集合的實現原始碼,這裡總結下,理解錯誤的地方還望指正 HashMap和Hashtable的區別 HashSet和HashMap、Hashtable的區別 HashMap和Hashtable的實現原理 Has

javamap集合的用法

1.宣告一個map: Map map = new HashMap(); 2.向map中放值,注意:map是key-value的形式存放的.如:      map.put("sa","dd"); 3.從map中取值:

javaMap集合的常用遍歷方法及HashMap的應用例項

Map的遍歷大體有3種: 1、遍歷Map.entrySet():它的每一個元素都是Map.Entry物件,這個物件中, 放著的就是Map中的某一對key-value; 2、遍歷Map.keySet():它是Map中key值的集合,我們可以通過遍歷這個集合來 讀取M

scala集合框架

Scala的集合框架 Scala把集合框架分為3種: 1.序列:Seq 2.集:Set 3.對映:Map iterable 每一個集合都有兩個包:根據包進行區別可變和不可變 1.不可變集合 scala.collection.immutable 預設的,不需要

第014講:ScalaMap和HashMap原始碼剖析及程式碼實踐(從1000個程式碼案例學習人工智慧和大資料實戰)

第014講:Scala中Map和HashMap原始碼剖析及程式碼實踐/** * A generic trait for immutable maps. Concrete classes have to provide * functionality for the abs

JavaMap集合及其子類

Collection集合的特點是每次進行單個物件的儲存,如果現在要進行一對物件的儲存,就只能用Map集合來完成,即Map集合中會一次性儲存兩個物件,且這兩個物件的關係:key = value結構。這種結構的最大特點是可以通過key找到對應的value內容。1.Map介面Map

JAVAMap集合的使用舉例

首先建立一個Emp類,再將幾個Emp物件新增到Map集合中。 Emp的id作為Map的鍵,並將id為“005”的物件從集合中刪除。 package com.han; import java.util.*; /** * 首先建立一個Emp類,再將幾個Emp物件新增到Ma

javaMap集合的取出方式

map集合的兩種取出方式: 1,Set<k> keySet:將map中所有的鍵存入到Set集合。因為set具備迭代器。 所以可以迭代方式取出所有的鍵,再根據get方法。獲取每一個鍵對應的值。 Map集合的取出原理:將map集合轉成set集合。再通過迭代器取出。

JavaMap集合和Collection集合的區別

Map集合和Collection集合的區別?    Map集合:是一種鍵和值的對映關係(雙列集合)                Collection集合:單列集合,只能儲存一種型別的元素     間接關係:HashSet依賴於Map介面的子實現類HashMap的      

Scalaset和map簡單使用

//因為Scala旨在幫助您利用功能和命令式樣式,所以它的集合庫可以區分它們可變和不可變的集合。 //例如,陣列總是可變的; 列表總是不可變的。 Scala還提供可變和不可變的集合和對映的替代方案, //但對兩個版本使用相同的簡單名稱。 對於集合和對映,Scala在類層次結構中建模可變性 //Sca

(轉)Scala協變(+)、逆變(-)、上界(<:)、下界(>:)簡單介紹

定義類 word ref 一個 pla 而不是 關系 repl 協變 看源碼的時候看到: trait ExtensionId[T <: Extension] {沒見過這個符號啊<: Scala上界(<:)和下界(>:) 1) U >: T

ES6的Set和Map集合

這就是 his 使用場景 ont 最大 urn 受限 我們 ... 前面的話   在ES6標準制定以前,由於可選的集合類型有限,數組使用的又是數值型索引,因而經常被用於創建隊列和棧。如果需要使用非數值型索引,就會用非數組對象創建所需的數據結構,而這就是Set集合與Map集

Java集合(Set,List,Map)

部分 開始 replace from min() eal util 此外 不同的 ******************collections類總結*************************** JAVA集合主要分為三種類型: Set(集) List(列表