开始学习scala,有一种学习java的感觉。
首先,从网站下载scala的包,下载后要安装,安装后把安装目录的bin放到环境变量psth里
cmd里,输入scala,如果出现下图,那么恭喜咯,安装成功咯~~
1:变量
首先我们看下定义变量方法
var 可以定义变量,可以改变值
val 定义的变量不可以改变值,类似于java的final变量;
2:函数
如图定义了一个函数
def max(x:Int,y:Int):Int ={
if(x>y)x
else y
}
def:表面定义函数
max :函数名称
(x:Int,y:Int)函数的两个参数,分别是Int类型。注意Int不能小写;
:Int 返回类型是Int
大括号里是函数主体~
调用时可以直接调用
max(9,10)
如果是没有参数也不用返回的函数可以如下写法:
def greet() = println("hello")
退出编辑器的方法 :quit
3:scala脚本
可以再文本文件中写scala脚本
如下:args.foreach(arg => print(arg))
命名为:test.scala
然后cmd中就可以使用命令 scals test.scala ni hao me
ni hao me 就作为参数传入脚本中,进行了打印;
脚本解析:
脚本中调用了foreach方法,arg作为参数传入 => 后面的是函数体 进行打印;
for循环:
scala的for循环如下:
for(arg <- args) println(arg)
4:数组(Araay)
scala的数组可以如下:
var gree = Array("ni","hao","a")
for(i<- 0 to 2) println(gree(i))
这样就完成了一个数组的循环打印;
5:列表(list)
val onetwolist = List(1,2,3) //这就是新建了一个list
list的方法:
:::表示可以吧两个list叠加到一起
::是可以吧元素加到list前面
但是list没有添加一个元素的方法,空list简称:Nil。但是可以通过对空list和元素的叠加,组成一个新的list
list的方法汇总:
list() 或者 Nil ---空list
val thrill = "i"::"am"::"niuxiao"::Nil ----创建一个list
List("1","2"):::List("3","4") ----叠加两个list
thrill(2) ----返回thrill的下标为2的元素
thrill.count(s => s.length==4)---返回thrill列表中长度为4的string元素个数
thrill.drop(2)---删除
thrill.dropRight(2)---从右边删除
thrill.exists(s => s=="am")---返回是否有为am的元素
thrill.filter(s => s.length ==4)---返回以长度为4的元素组成的新列表
thrill.forall(s => s.endsWith("1"))---返回是否列表所有元素都是以1结尾
thrill.foreach(print)---循环打印元素
thrill.head---返回列表第一个元素
thrill.init---返回除最后一个以外其他元素组成的列表
thrill.isempty---返回thrill列表是否为空
thrill.last
thrill.length
thrill.map(s => s+"4")---返回列表里每个string元素都加“4”构成的列表
thrill.mkString(",")---返回列表里元素组成的字符串,由,连接
thrill.remove(s => s.length==4)
thrill.reverse---返回列表元素逆序排列的新列表
thrill.sort((s,t) => s.charAt(0).toLowerCase < t.charAt(0).toLowerCase) -----返回列表元素第一个字符字母小写后排序组成的新列表
thrill.tail ---返回除第一个元素外组成的新列表
6:元组(tuple)
元组和list的区别:
list都是同一类型的元素,元组可以是不同类型的元素
例如:val pair = (99,"nihao")
println(pair._1)
println(pair._2)
很方便哦~~