蹒跚学步,走出Scala的下一步
在走到下一步之前呢,我们现在做下总结,然后跑个小DEMO
上一章节我们了解了Scala语言的变量是如何定义的—Scala的变量分两种类型(val、var)
然后我们又简单的学习了下如何自定义函数,别忘了是以def为定义标识的哈,
接下来我们由于放到控制台下的代码容易丢失不易保存,那么我们就介绍了下如何写Scala的脚本。
随后我们介绍了while、if、foeach、for的简单用法,那么从上面的简单梳理过程中大家应该对上一章节的内容了然于心了吧,接下来我们来运行个DEMO,DEMO的题目是这样的,我们对一个给定的Int数组做快速排序:
def quickSort(xs : Array[Int]):Array[Int]{
if(xs.length <= 1) xs
else{
val pivot = xs(xs.length/2)
Array.concat(
quickSort(xs filter (pivot >))
xs filter (pivot ==)
quickSort(xs filter (pivot <))
)
}
}
Concat是合并多个Array的函数,看到这样的代码是否已经被函数式语言的魅力深深的折服了?OK,废话少说,接下来我们进入我们的第二步,参数化数组的举例与解析