Scala中下划线的用途

存在性类型:

def foo(l: List[Option[_]]) = 

def f(m: M[_])

高阶类型参数:

case class A[K[_],T](a: K[T])

def f[M[_]]

临时变量:

val _ = 5

临时参数:

List(1, 2, 3) foreach { _ => println("Hi") }    //List(1, 2, 3) foreach { t => println("Hi") }

通配模式:

Some(5) match { case Some(_) => println("Yes") }

match {
     case List(1,_,_) => " a list with three element and the first element is 1"
     case List(_*)  => " a list with zero or more elements "
     case Map[_,_] => " matches a map with any key type and any value type "
     case _ =>
 }

val (a, _) = (1, 2)
for (_ <- 1 to 10)

通配导入:

// Imports all the classes in the package matching
import scala.util.matching._

// Imports all the members of the object Fun (static import in Java).
import com.test.Fun._

隐藏导入:

// Imports all the members of the object Fun but renames Foo to Bar
import com.test.Fun.{ Foo => Bar , _ }

// Imports all the members except Foo. To exclude a member rename it to _
import com.test.Fun.{ Foo => _ , _ }

连接字母和标点符号:

def bang_!(x: Int) = 5

占位符:

( (_: Int) + (_: Int) )(2,3)

val nums = List(1,2,3,4,5,6,7,8,9,10)

nums map (_ + 2)
nums sortWith(_>_)
nums filter (_ % 2 == 0)
nums reduceLeft(_+_)
nums reduce (_ + _)
nums reduceLeft(_ max _)
nums.exists(_ > 5)
nums.takeWhile(_ < 8)

偏函数:

def fun = {
    // Some code
}
val funLike = fun _

List(1, 2, 3) foreach println _

1 to 5 map (10 * _)

//List("foo", "bar", "baz").map(_.toUpperCase())
List("foo", "bar", "baz").map(n => n.toUpperCase())

初始化默认值:

var d:Double = _
var i:Int = _

参数序列:

//Range转换为List
List(1 to 5:_*)

//Range转换为Vector
Vector(1 to 5: _*)

//可变参数中
def capitalizeAll(args: String*) = {
  args.map { arg =>
    arg.capitalize
  }
}

val arr = Array("what's", "up", "doc?")
capitalizeAll(arr: _*)

作为参数名:

//访问map
var m3 = Map((1,100), (2,200))
for(e<-m3) println(e._1 + ": " + e._2)
m3 filter (e=>e._1>1)
m3 filterKeys (_>1)
m3.map(e=>(e._1*10, e._2))
m3 map (e=>e._2)

//元组
(1,2)._2
时间: 2024-10-07 12:55:57

Scala中下划线的用途的相关文章

Python中下划线的使用方法

这篇文章主要介绍了Python中下划线的使用方法,是为python编程学习中的基本知识,需要的朋友可以参考下     本文将讨论Python中下划线(_)字符的使用方法.我们将会看到,正如Python中的很多事情,下划线的不同用法大多数(并非所有)只是常用惯例而已. 单下划线(_) 通常情况下,会在以下3种场景中使用: 1.在解释器中:在这种情况下,"_"代表交互式解释器会话中上一条执行的语句的结果.这种用法首先被标准CPython解释器采用,然后其他类型的解释器也先后采用. ? 1

Python中下划线的使用方法_python

本文将讨论Python中下划线(_)字符的使用方法.我们将会看到,正如Python中的很多事情,下划线的不同用法大多数(并非所有)只是常用惯例而已. 单下划线(_) 通常情况下,会在以下3种场景中使用: 1.在解释器中:在这种情况下,"_"代表交互式解释器会话中上一条执行的语句的结果.这种用法首先被标准CPython解释器采用,然后其他类型的解释器也先后采用. >>> _ Traceback (most recent call last): File "&l

Scala 简介 优点 及 用途

介绍: Scala 是一种有趣的语言.它一方面吸收继承了多种语言中的优秀特性,一方面又没有抛弃 Java 这个强大的平台,它运行在 Java 虚拟机 (Java Virtual Machine) 之上,轻松实现和丰富的 Java 类库互联互通.它既支持面向对象的编程方式,又支持函数式编程.它写出的程序像动态语言一样简洁,但事实上它确是严格意义上的静态语言.Scala 就像一位武林中的集大成者,将过去几十年计算机语言发展历史中的精萃集于一身,化繁为简,为程序员们提供了一种新的选择. 优势: 个人觉

关于golang中下划线(_)的语义说明

在阅读k8s代码的过程中,经常可以看到下划线出现在不同的地方,有时候我们并不清楚下划线代表的具体含义是什么,有什么作用,但是又会经常选择性的忽略这些细节,实际上却非常重要. 下面我来总结一下下划线(_)出现的三种场合 用在返回值 这个应该是最简单的用途,比如某个函数返回三个参数,但是我们只需要其中的两个,另外一个参数可以忽略,这样的话代码可以这样写: v1, v2, _ := function(...) 用在变量(特别是接口断言) 例如我们定义了一个接口(interface): type Foo

Word中下划线怎么打出来

一.设置字符的下划线 在设置字符下划线时,一般应选中文字,如果先单击下划线按钮,再键入字符,那么在没有取消下划线之前,所键入的文字都会有添加下划线. 可以使用以下方法设置字符的下划线. 使用功能区中的下划线按钮 选中文字后,单击"开始"功能区中的下划线按钮,就会把选定字符加上默认的下划线格式.如果单击下划线按钮右侧的三角,可以打开一个简单下划线样式的选择,如下图所示,在这里可以选择常用的下划线样式.如果列出的下划线样式都不能满足用户的需求,还可以单击"其他下划线"命

div+css网页布局中下划线text-decoration使用教程

常见和常用的下划线样式 1.文字带下划线的方式显示 使用html中<u>标签即可对加u标签的文字加下划线   但是注意的时候u标签是以<u>开始</u>结束的一对标签,<u>我是被加下划线的</u> 2.超链接文字下划线-css 超链接详细介绍 我们常常需要让带超链接的文字,以有下划线方式显示,而鼠标放上去下划线不显示方式显示带链接的文字,接下来我们通过css对超链接下划线设置 使用代码text-decoration,可进css手册查看text-

Scala基本语法和概念

本文主要包括Scala的安装过程并理解Scala的基本语法和概念,包括表达式.变量.基本类型.函数.流程控制等相关内容. 1. 安装 从All Versions Scala下载所需版本Scala安装包,解压到指定目录之后,配置环境变量并使其生效. 如果你使用Mac,则可以使用brew安装: ⇒ brew install scala 在终端键入scala查看Scala的版本,并进入Scala的解释器: ⇒ scala Welcome to Scala version 2.11.6 (Java Ho

Python中的下划线详解

  这篇文章主要介绍了Python中的下划线详解,本文讲解了单个下划线直接做变量名.单下划线前缀的名称.双下划线前缀的名称等内容,需要的朋友可以参考下 这篇文章讨论Python中下划线_的使用.跟Python中很多用法类似,下划线_的不同用法绝大部分(不全是)都是一种惯例约定. 一. 单个下划线直接做变量名(_) 主要有三种情况: 1. 解释器中 _符号是指交互解释器中最后一次执行语句的返回结果.这种用法最初出现在CPython解释器中,其他解释器后来也都跟进了. 代码如下: >>> _

PowerPoint超链接字体颜色修改、怎么去掉超链接下划线

经常在做PPT幻灯片时会遇到这样一个问题,给文字加超链接后发现链接的颜色是蓝色的,而且还带有下划线,这种效果与主题的色彩搭配简直是太影响美观效果了.有没有什么办法可以去掉PPT中的超链接下划线?再将超链接的文字颜色更改一下呢?针对PPT超链接的修改问题,Word联盟作出了相应修改的方法,按照本篇文章的步骤一步一步来,保证可以达到你满意的效果!PowerPoint教程 本文以PowerPoint2007来作演示,其他版本中方法几乎相似! PowerPoint中超链接怎么做? ①选择需要加超链接的文