Scala下划线用法总结

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

  1. 用于变量初始化

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

  1. 用于导包引入

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

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

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

  1. 用于模式匹配

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

  1. 用于访问tuple元素

例:

  1. 用于简写函数

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

  1. 定义偏函数

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

相关推荐
BingoGo9 小时前
PHP clone 之后,为什么改副本会影响原对象?
后端·php
JaguarJack9 小时前
PHP clone 之后,为什么改副本会影响原对象?
后端·php·服务端
小灰灰搞电子10 小时前
Rust+Slint 实现动态消息提示框源码分享
开发语言·后端·rust
小奏技术10 小时前
10 MB 的 Postman 替代品,启动不到 1 秒
后端
东风破_10 小时前
Text2SQL :用自然语言操作 SQLite 数据库
人工智能·后端
传奇开心果编程11 小时前
【Rust入门知识点学与练】第21课:Trait 进阶 Advanced Traits
开发语言·学习·rust
新时代牛马11 小时前
字符设备驱动完整篇:从 cdev_add、file_operations 到chrdev_open 与排障
开发语言·python
swordbob12 小时前
ReentrantLock 与 AQS 完整学习手册
java·开发语言
白山编程大哥12 小时前
Java OutputStreamWriter 详解:从字符到字节的桥梁
java·开发语言·python
shmily麻瓜小菜鸡13 小时前
JavaScript / TypeScript 易踩坑知识点 —— 异步编程类
开发语言·javascript·typescript