scala笔记(一)

变量声明

val a = 5//定义常量,无法改变内容,可以指定类型(也可以自动推断)
var b = 3//变量
val c:String = "hello"
val x,y = 1//将x,y设为1
val i = -1//注意赋值负数时,负数和等号间加空格

常用数值类型

Byte,Char,Short,Int,Long,Float,Double
RichInt,RichDouble,RichChar
BigInt,BigDecimal
Boolean

调用方法

  1. 在Scala中+-*/等操作符实际上是方法。
  2. 不带参数的Scala方法通常不适用圆括号

控制结构

条件表达式

if (x > 0) 1 else -1

val s = if (x > 0) 1 else -1 //可以将表达式的值赋给变量


var y = -1
var r = if (y>0) 1//缺少else部分时,会引入'()',即等于
//var r = if (y>0) 1 else ()

Scala中每个表达式都有一个类型

if (x > 0) 1 else -1 //表达式类型是Int,因为两个分支都是Int

if (x > 0) "positive" else -1 //表达式类型是Any,为两个分支类型的公共超类型

循环

while (n > 0) {
    r = r * n
    n -=1
}

for(i <- 1 to n)
    r = r * i

块表达式

‘{ }’中的语句为块语句,包含一系列表达式,块中最后一个表达式的值就是块的值。
赋值动作的值Unit类型,因此以赋值语句结束的块语句的值是’{}’。

x = y = 1//结果为x={}

映射

创建

//创建不可变Map
val b = Map(("qvq",1),("ovo",2))//or val b=Map("qvq"->1,"ovo"->2)
//创建可变映射
val c = scala.collection.mutable.Map(("qvq",1),("ovo",2))
//创建空映射
val s = new scala.collection.mutable.HashMap[String,Int]

获取值

val x = b("qvq")

//检查映射是否有某个键
val y = if (b.contains("dad")) b("dad") else 0
val y = b.getOrElse("dad", 0)

//get返回Option对象,要么是Some,要么是None
val y = b.get("dad")
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值