注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

阿弥陀佛

街树飘影未见尘 潭月潜水了无声 般若观照心空静...

 
 
 

日志

 
 
关于我

一直从事气象预报、服务建模实践应用。 注重气象物理场、实况场、地理信息、本体知识库、分布式气象内容管理系统建立。 对Barnes客观分析, 小波,计算神经网络、信任传播、贝叶斯推理、专家系统、网络本体语言有一定体会。 一直使用Java、Delphi、Prolog、SQL编程。

网易考拉推荐

scala Map  

2014-03-26 16:10:18|  分类: Scala |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

scala> import scala.collection.immutable.SortedMap
import scala.collection.immutable.SortedMap

scala> var se = SortedMap[(String,String), Int]()
se: scala.collection.immutable.SortedMap[(String, String),Int] = Map()

scala> se += ("a","b")->1

scala>   se += ("0","a")->2

scala> se
res2: scala.collection.immutable.SortedMap[(String, String),Int] = Map((0,a) ->
2, (a,b) -> 1)

scala> se.get("a","b")
res3: Option[Int] = Some(1)
============================================================
scala> import scala.collection.mutable.Map
import scala.collection.mutable.Map

scala> val map = Map[String,String]()
map: scala.collection.mutable.Map[String,String] = Map()

scala> map("foo") = "bar"

scala> map("hxf") = "calf"

scala> map
res7: scala.collection.mutable.Map[String,String] = Map(hxf -> calf, foo -> bar)

===========================================================
val map = Map("1"->1, "2"->2, "3"->3)
map.filterKeys(k => k >= "2")
res5: scala.collection.immutable.Map[String,Int] = Map(3 -> 3)
===========================================================
val map = Map("1_a"->1, "1_b"->2,  "2_a"->3,  "2_b"->4, "3_a"->5)
scala> map.filterKeys(k => k.split("_")(0) == "2")
res6: scala.collection.immutable.Map[String,Int] = Map(2_a -> 3, 2_b -> 4)
===========================================================

package models
import scala.collection.immutable.SortedMap
object MapParTest extends App {
  mapParRange
  /**
   * 该并行算法在实际2.10.4环境中,不会出现报警信息,且稳定
   */
  def mapParRange {
    val maps = SortedMap("1_a" -> 1, "1_b" -> 2, "2_a" -> 3, "2_b" -> 4, "3_a" -> 5).toParArray
    val r=0 until maps.length
    for (i <- r.par){
      val (k,v)=maps(i)
      println(k + "->" + v)
    }
  }
  /**
   * 该并行算法在实际2.10.4环境中,会遇见报警信息,且不稳定
   */
  def mapPar {
    val maps = Map("1_a" -> 1, "1_b" -> 2, "2_a" -> 3, "2_b" -> 4, "3_a" -> 5)
    for ((k, v) <- maps.par) {
      println(k + "->" + v)
    }
  }
}
---------------------------------------------------------------------------------------
mapParRange输出结果:
2_b->4
2_a->3
1_b->2
1_a->1
3_a->5
--------------------------------------------------------------------------------------
mapPar 输出结果:
3_a->5
2_a->3
2_b->4
1_b->2
1_a->1
  评论这张
 
阅读(3074)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017