Scala下划线用法总结

Scala是一门以java虚拟机(JVM)为运行环境并将面向对象和函数式编程的最佳特性结合在一起的静态类型编程语言。scala 单作为一门语言来看, 非常的简洁高效,在Scala中存在很多让代码更加简洁的语法,下划线"_"便是其中一个。下划线的普遍用法总结如下:

  1. 用于变量初始化

在Java中,可以声明变量而不必给出初始值,在Scala中,变量在声明时必须显示指定,可以使用下划线对变量进行初始化。而且该语法只适用于成员变量,不适用于局部变量。例:

  1. 用于导包引入

导包引入时使用_导入该包下所有内容,类比Java中的*。例如:

3.用于将方法转变为函数

在Scala中方法不是值,而函数是。所以一个方法不能赋值给一个val变量,而函数可以。方法可以转换为函数赋值给变量,例:

  1. 用于模式匹配

模式匹配中可以用下划线来作为Java中default的类比使用,也可以在匹配集合类型时,用于代表集合中元素,例:

  1. 用于访问tuple元素

例:

  1. 用于简写函数

如果函数的参数在函数体只出现一次,则可以用下划线代替。

  1. 定义偏函数

对某个多参数函数进行部分函数调用,没有传入的参数使用_代替,返回结果即为偏函数。例:

相关推荐
WeiXin_DZbishe5 小时前
基于springboot装修风格选择系统的设计与开发-计算机毕设【课程设计】77964
java·vue.js·spring boot·后端·python·php·课程设计
leikooo6 小时前
ARTS 1018: 字符计数判断异位词、局部做对仍会增加维护负担与用 AI 也要理解自己在做什么
后端
一步一脚印1566 小时前
对于JVM的简单理解 一
后端
benchmark_cc6 小时前
量化项目启动时,应该先设计数据接口还是先编写策略?从系统架构角度做出正确选择
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
2601_962885726 小时前
如何用 Python 判断一只股票“追涨”还是“抄底”更有效?
android·开发语言·python
136096757236 小时前
证书签不下来,是因为 well-known 被反代了
后端
Yeswater6 小时前
从 NIO 到 Netty:五个坑,和一张把它填平的基础设施网
java·后端·netty
福大大架构师每日一题6 小时前
2026-10-18:转换字符串的最小成本Ⅲ。用go语言,给定两个字符串 source 和 target,以及若干条替换规则。每条规则包含一个模式串、一个替换串
后端
韩振方6 小时前
Kubernetes Secret 让数据库密码离开镜像和 Pod 配置
后端
闽林致远6 小时前
基于标准 C++ 的插件化多线程通用数据采集框架|支持自定义业务模块,Oracle/MySQL 入库、FTP 图片上传,Windows/Linux 跨平台部署
后端