当前位置: 首页 > news >正文

【Scala】 2. 函数

2. 函数

scala运算符、if … else …两部分和C语言类型,这里不再赘述,这里从for循环开始讲讲scala和c/c++的不同之处。

2.1 for循环

scala中主要包含to和until两个关键字,下面分别看看两者的用法,看例子就行了。

(1) to的用法

scala的例子使用to关键字如下:

var e = 0;  
for (e <- 0 to 5) {  println(f"e[$e%d] = " + (e + 1))  
}

打印出的结果如下:

e[0] = 1
e[1] = 2
e[2] = 3
e[3] = 4
e[4] = 5
e[5] = 6
(2) until的用法

scala的例子使用to关键字如下:

var e = 0;  
for (e <- 0 until 5) {  println(f"e[$e%d] = " + (e + 1))  
}

打印出的结果如下:

e[0] = 1
e[1] = 2
e[2] = 3
e[3] = 4
e[4] = 5

该结果和C语言中使用的方式是一致的。

2.2 函数

和c语言类似,基本可以作为参考,智能在于可以直接不写访问值和return关键字实现,下面举例说明。

(1)完整的实现方式
	// first way:  def sum(a: Int, b: Int): Int = {  return (a+b)  }

包含return值和返回值类型

(2)不包含返回值类型
	// second way:  def sum(a: Int, b: Int): Int = {  return a+b  }

包含return关键字

(3)不包含返回值类型和return关键字
	// third way:  def sum(a: Int, b: Int) = {  a+b  }

啥都省下来。

注:

  • 函数值包含缺省值,直接在变量后添加,举例如下:
	// third way:  def sum(a: Int, b: Int = 1) = {  a+b  }

此时调用时若需要采用缺省值,变量b可以不赋值。

	def main(args: Array[String]): Unit = {  val a = 8;  println(f"$a%d + 3 = " + sum(a))}
  • apply函数为一类特殊的函数,可在object和class中通过object名或class名的方式直接调用,举例如下:
object func {  def main(args: Array[String]): Unit = {  // 调用func object对象中的apply函数  func()  }  def apply() = {  println ("apply func test")  }
  • object对象中的main函数为scala语言中入口函数,即从此处开始运行。
http://www.lryc.cn/news/295264.html

相关文章:

  • 14.0 Zookeeper环球锁实现原理
  • 课时16:本地变量_普通变量
  • 阿里云服务器centos_7_9_x64位,3台,搭建k8s集群
  • 代码随想录第二十八天
  • 【python】绘制爱心图案
  • 在 Elastic Agent 中为 Logstash 输出配置 SSL/TLS
  • Vue中对虚拟DOM的理解
  • golang通用后台管理项目——Go+Vue通用后台管理项目实战
  • 推动海外云手机发展的几个因素
  • python coding with ChatGPT 打卡第17天| 二叉树:找树左下角的值、路径总和
  • 2020年通信工程师初级 综合能力 真题
  • 12.0 Zookeeper 数据同步流程
  • 作业2.6
  • Qt应用软件【协议篇】TCP示例
  • C# CAD交互界面-自定义面板集(四)
  • 物流自动化移动机器人|HEGERLS三维智能四向穿梭车助力优化企业供应链
  • EasyExcel下载带下拉框和批注模板
  • C语言之字符逆序(牛客网)
  • RAPTOR:树组织检索的递归抽象处理
  • 图论:合适的环
  • 【数据分享】1929-2023年全球站点的逐月平均降水量(Shp\Excel\免费获取)
  • React+Antd实现省、市区级联下拉多选组件(支持只选省不选市)
  • CentOS镜像如何下载?在VMware中如何安装?
  • 计算机科学导论(4)DMA传输原理
  • select、poll和epoll的区别
  • gpt今日最新新闻:gpts的广泛应用
  • 【进入游戏行业选游戏特效还是技术美术?】
  • (delphi11最新学习资料) Object Pascal 学习笔记---第4章第2.3节(常量参数)
  • 事件在状态流程图中的工作方式
  • 幻兽帕鲁能在Mac上运行吗?幻兽帕鲁Palworld新手攻略