2015年5月22日

摘要: 1 actor {2 var sum = 03 loop {4 receive {5 case Date(bytes) => sum += hash(bytes)6 case GetSum(reguester) => r... 阅读全文
posted @ 2015-05-22 12:16 wlwgcdxc 阅读(145) 评论(0) 推荐(0)
 
摘要: 1 def factorial(x: BigInt): BigInt = 2 if (x == 0) 1 else x * factorial(x - 1)3 4 println(factorial(30))BigInt就像是内建的类型,任何scala程序员都可以,去定义他搜索复制 阅读全文
posted @ 2015-05-22 11:54 wlwgcdxc 阅读(110) 评论(0) 推荐(0)
 
摘要: 在语法层面,支持关联映射1 var capital = Map("china" -> "beijing")2 capital += ("japan" -> "dongjing")3 println(capital("japan"))列表 List:scala> val numbers = List(... 阅读全文
posted @ 2015-05-22 11:51 wlwgcdxc 阅读(179) 评论(0) 推荐(0)

2015年5月15日

摘要: 使用并行集合,能够并行的访问集合,大幅提高性能。举例:1 val urls = List("http://scala-lang.org",2 "https://github.com/yankay/scala-tour")3 4 def fromURL(url: String) = scala.i... 阅读全文
posted @ 2015-05-15 17:03 wlwgcdxc 阅读(287) 评论(0) 推荐(0)
 
摘要: 。 阅读全文
posted @ 2015-05-15 16:32 wlwgcdxc 阅读(115) 评论(0) 推荐(0)
 
摘要: Scala提供了Option机制来解决,代码中不断检查null的问题。标准类库中,Option采用样例类实现,有两个样例子类:Some和NoneSome中包装了一个值,可以使用泛型。None中则表示没有值。Option举例: 1 def getProperty(name: String): Opti... 阅读全文
posted @ 2015-05-15 12:32 wlwgcdxc 阅读(171) 评论(0) 推荐(0)
 
摘要: 循环语句是指令式编程的常见语句,Scala对其加以改进,成为适应函数式风格的利器。for循环中的变量,没有val或者var,是因为变量的类型,完全是集合中的元素的类型。作用域持续到括号结束。在scala中,没有continue和break。continue可以用if守卫来完成。break有一下几种方... 阅读全文
posted @ 2015-05-15 12:02 wlwgcdxc 阅读(163) 评论(0) 推荐(0)
 
摘要: 尾递归是递归的一种,尾递归是函数式编程的常见写法,特点在于会在函数的最末调用自身。尾递归会在编译期优化,因此不用担心递归造成的栈溢出问题。举例: 1 val file = List("warn 2013 msg", "warn 2012 msg", 2 "error 2013 msg", "wa... 阅读全文
posted @ 2015-05-15 11:35 wlwgcdxc 阅读(199) 评论(0) 推荐(0)
 
摘要: 模式匹配是类似switch-case特性,但更加灵活;也类似if-else,但更加简约。 1 def fibonacci(i : Any) : Int = i match { 2 case 0 => 0 3 case 1 => 1 4 case n : Int if (n >... 阅读全文
posted @ 2015-05-15 00:31 wlwgcdxc 阅读(456) 评论(0) 推荐(0)

2015年5月14日

摘要: 定义类中,有一个问题traits中的问题def iterator: java.util.Iterator[A]java.util.Iterator[A]直接是生成了一个A的迭代器??trait ForEachAble[A] { def iterator: java.util.Iterator[A]... 阅读全文
posted @ 2015-05-14 19:02 wlwgcdxc 阅读(90) 评论(0) 推荐(0)