scala&Clojure&Groovy
孙大大
我是孙大大,跟我一起念孙大大。
展开
-
scala 初识
var 声明可变的变量val 不可变常量,一旦初始化,就不能改变var a:Int 就确切的指明了类型Int,而不采用类型推断for(a 结果1 11 21 32 12 22 30.2e-2原创 2011-09-23 10:13:41 · 811 阅读 · 0 评论 -
Groovy的闭包
一个简单的例子[1,2,3].each{entry -> print entry} each是循环执行的意思,它是List.each方法需要一个闭包参数{}是闭包的部分entry是参数部分(当然可以是命名为你喜欢的任何非关键字 如 a,e,people等等)->右边是要执行的代码块 def sum=01.upto(100){arg->sum+=arg-1}原创 2011-02-19 11:15:00 · 2460 阅读 · 0 评论 -
Clojure的关键字
def (def v 1)defn (defn func [] (xxx))let (let [a,1] x y z) ; local bindbinding (binding [a,1] x y z) ;gloab bindprintln (println x y)对集合Col原创 2011-09-21 15:27:06 · 960 阅读 · 0 评论 -
clojure 在此告一段落
clojure 真的是小众中的小众,在此告一段了,以后没事儿了再来研究啦。有几个一开始不太习惯的地方1,好多括号 2,符号前置3非OO的思想。代码量也许可以降下来,但是思维的转换还是很痛苦的原创 2011-09-22 15:44:58 · 1009 阅读 · 0 评论 -
Groovy正则表达式
regex查找操作符 =~返回matcher对象 regex匹配操作符 ==~返回boolean型,匹配的是整个 字符串 利用GString我们可以做一些有趣的事情。word=//w+/assert 'asdasdadasd'==~/($word $word)*/word是不是比 //w+/更加容易理解? 通用形式String =~pattern原创 2011-02-19 16:22:00 · 1618 阅读 · 0 评论 -
Groovy的集合类型
ranges(范围),lists(列表),maps(映射) -------------ranges-------------left..right(left..right)(left.. ranges的方法有contains(xx),each{闭包}等 ,除此之外还有lists.grep(ranges) ---------lists与ranges结合产生强大的灵原创 2011-02-19 17:31:00 · 1366 阅读 · 0 评论 -
GDK为数字提供的方法
1/7的结果是BigDecimal,0.1428571429这是四舍五入的结果,而不是像java一样结果为0 abs toInteger round方法除此之外还提供了以闭包为参数的方法times upto downto step //times用于重复做一件事情10.times{do something}//sum=''1.upto(10){numbe原创 2011-02-19 16:52:00 · 773 阅读 · 0 评论 -
Groovy的资源处理
-----流的例子---------File的eachLine()方法new File('xxx.txt').eachLine{println it}原创 2011-02-20 16:01:00 · 557 阅读 · 0 评论 -
GString
groovy中字符串的处理 在groovy中字符串分两种1,原java普通字符串,单引号。2,GString,双引号 允许占位符 $。 三组引号允许字符串在多行中,不用连接 '''asdasdsdasdsadasdsadsds sd ''' 此处原java的String """asdasdsdasdsadasdsadsds sd ""原创 2011-02-19 14:04:00 · 6191 阅读 · 0 评论