栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

9.1.2、Scala

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

9.1.2、Scala

Java系列文章目录

作者:Loves_dccBigData

文章目录
  • Java系列文章目录
    • 1、定义变量
  • 2、类型转换
  • 3、String数据类型
    • 4、scala运算符的本质
    • 5、流程控制结构
    • 6、循环守卫
    • 7、循环步长
    • 8、循环返回值
    • 9、循环中断

本文要记录的大概内容:


提示:以下是本篇文章正文内容

1、定义变量

变量类型:与Java一样8种(Int,Long,Short,Byte,Float,Double,Boolean,Char)
—变量可以使用val和var修饰

val:使用val修饰的变量不可变,不能修改,尽量使用val
var:使用var修饰的变量可变,可以修改

val a:Int = 10	//类型可以省略,类型推断
var b:Int = 20
2、类型转换

只要数据符合要求,直接调对应的to+类型方法进行转换

---scala中的隐式转化
val str1 = "123"
val i: Int = str1.toInt
print(i)
3、String数据类型

scala中的String类型就是Java中的String,创建方法都是一样的

  //Any 相当于Java中的Object
  //AnyRef 是所有引用类型的父类
  //AnyVal 是所有值类型的父类
//scala中的字符串拼接,s+"$变量名",底层还是StringBuilder的append方法实现的(s是一个方法)
val s1:String = "hello"
val s2:String = "world"
println(s1+s2)
println(s"$s1,$s2")
4、scala运算符的本质

在 Scala 中其实是没有运算符的,所有运算符都是方法。

1)当调用对象的方法时,点.可以省略

2)如果函数参数只有一个,或者没有参数,()可以省略

5、流程控制结构

(1)顺序结构
(2)选择结构(if)
(3)循环结构(for,while,do…while)

1)for循环结构

for(i <- 1 to 3){	变量<-1 to 3 表示1到3(都包含)

 print(i + " ")

}

 for(i <- 1 until 3) {

 print(i + " ")
 
  for (elem <- Range(1, 10, 1)) {	//底层都是range
  println(elem)
}

(1)这种方式和前面的区别在于 i 是从 1 到 3-1 
(2)即前闭合后开的范围
6、循环守卫
for(i <- 1 to 3 if i != 2) {

 print(i + " ")

}
循环守卫,即循环保护式(也称条件判断式,守卫)。保护式为 true 则进入循环

体内部,为 false 则跳过,类似于 continue。
7、循环步长
for (i <- 1 to 10 by 2) {

 println("i=" + i)

}

说明:by 表示步长
8、循环返回值
val res = for(i <- 1 to 10) yield i

println(res)
9、循环中断

Scala 内置控制结构特地去掉了 break 和continue,是为了更好的适应函数式编程,推荐使用函数式的风格解决break和continue的功能,而不是一个关键字。
Scala中使用breakable

控制结构来实现 break 和 continue 功能
需求 1:采用异常的方式退出循环

try {

 for (elem <- 1 to 10) {

 println(elem)

 if (elem == 5)
  throw new RuntimeException 	//抛出一个异常进行处理

 }

 }catch {

 case e =>	//不做任何处理

 }

 println("正常结束循环")

需求 2:采用 Scala 自带的函数,退出循环

 Breaks.breakable(

 for (elem <- 1 to 10) {

 println(elem)

 if (elem == 5) 
 Breaks.break()

}

 )

 println("正常结束循环")

需求 3:对 break 进行省略

breakable {

 for (elem <- 1 to 10) {

 println(elem)

 if (elem == 5) break

 }

 } 

 println("正常结束循环")

 } 
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/459119.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号