字符串内插,并格式化数值
scala> val name = "Jerry"
name: String = Jerry
scala> val info = s"My name is $name." // 字符串内插
info: String = My name is Jerry.
scala> val a = 2.7255
a: Double = 2.7255
scala> printf(f"You are $a%.2f.") // 格式化数值,字符串内插
You are 2.73.
正则表达式
scala> val input = "Frank,123 Main,925-555-1943,95122"
res90: String = Frank,123 Main,925-555-1943,95122
scala> val pattern = """([\d]{3}-){2}[\d]{4}""".r // 正则表达式
pattern: scala.util.matching.Regex = ([\d]{3}-){2}[\d]{4}
scala> pattern.findAllIn(input).toList // 匹配正则表达式
res94: List[String] = List(925-555-1943)
条件表达式
val s = if (n > 0) 1 else -1 // 可以将if/else的值赋给变量
println(s)
val x = if ( n > 0) "postive" else -1 // 两个分支类型的公共超类为Any
println(x)
val u = if ( n > 0) 1 else () // 每个表达式都应该有某种值 if ( n > 0) 1 等价于 if ( n > 0) 1 else ()
println(u)
循环
Scala拥有与Java和C++相同的while和do循环,例如:
var m = 10
q qm > 0) {
println(m)
m -= 1 // 注:scala不提供++和--操作符,我们需要使用 +=1 或者 -=1
}
Scala数组遍历, 语法结构: for (i <- 区间)
val common = Array(1,2,3,4)
// 遍历数组
for (i <- 0 until common.length)
println(i + " : " + common(i))
println("=======================")
// 每两个元素一跳
for (i <- 0 until(common.length,2))
println(i + " : " + common(i))
println("=======================")
// 倒序遍历
for (i <- (0 until(common.length)).reverse)
println(i + " : " + common(i))
println("=======================")
// 不需要数组下标,直接访问数组
for (elem <- common)
println(elem)
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。