scala函数的至简原则

( 1) 第一点就是我们之前提到的, return 可以省略 ,Scala 会使用函数体的逻辑 上的最后一行代码作为返回值

def f1( s : String ): String = {

s

}

( 2)如果函数体只有一行代码,可以省略花括号

def f2(s: String): String = s

(3)返回值类型如果能够推断出来,那么可以省略:和返回值类型一起省略

def f3( s : String ) = s

(4)如果有 return,则不能省略返回值类型,必须指定

def f4(): String = {

return "ximenqing4"

}

(5)如果函数明确声明 Unit ,那么即使函数体中使用 return 关键字也不起作用

( 6)Scala 如果 函数 是 没有 返回值类型,可以省略等号,将无返回值的函数称之为过程

def f6() {

"dalang6"

}

(7)如果函数无参 ,但是声明了参数列表,那么调用时,小括号可加可不加

def f7() = "dalang7"

f7

( 8)如果函数没有参数列表,那么小括号可以省略, 调用时小括号必须省略

def f8 = "dalang"

println(f8)

相关推荐
霸道流氓气质14 小时前
Mermaid 图表完全指南:从文本语法到LangGraph4j工作流可视化实战
开发语言·python
泡海椒15 小时前
JQuick-Excel 项目定位与适用场景:声明式 Java Excel 的边界
java·开发语言·excel
slandarer15 小时前
MATLAB | R2026b 更新了哪些有趣的新东西
开发语言·数据库·matlab
工具派15 小时前
Word文档太大怎么拆分?段落结构与两种拆法的边界实测
开发语言·c#·word
wjcroom15 小时前
实现老型号HP打印机手机无线打印的一些步骤和方法
开发语言·智能手机·php
潜龙952715 小时前
需求文档一键变测试用例:手工用例智能生成平台
开发语言·c#
sunburn-15 小时前
Java 排序算法详细教学:从冒泡排序到快速排序
java·开发语言·数据结构·ide·算法
鹤卿12315 小时前
「iOS」GCD
开发语言·ios·objective-c
我是小白呀16 小时前
编排还是事件协作?用 AcmeFlow 讲清企业 Workflow 的控制权
java·开发语言
ACP广源盛1392462567316 小时前
接口适配方案选型|GSV6125@ACP HDMI2.0 转 Type‑C/DP1.4 桥接芯片工程评估
大数据·c语言·开发语言·硬件架构·硬件工程·国产芯片