Scala--reduceLeft
reduceLeft神语法
val a = Array(20, 12, 6, 15, 2, 9)
|
1
2
3
4
5
6
7
8
|
scala> a.reduceLeft(_ + _) // 数组求和res0: Int = 64scala> a.reduceLeft(_ * _) // 数组求乘积res1: Int = 388800scala> a.reduceLeft(_ min _) // 数组求最小值res2: Int = 2scala> a.reduceLeft(_ max _) // 数组求最大值res3: Int = 20 |
使用函数
自定义函数实现数组求最大值功能
|
1
2
3
4
|
scala> val a = Array(20, 12, 6, 15, 2, 9)scala> val f = (x:Int, y:Int) => x max yscala> a.reduceLeft(f)res0: Int = 20 |
实现原理
第一、第二个数的比较结果再与第三个数进行比较,以此类推。x为上一次结果,y为本次比较数值
使用神语法
scala> val a = Array(20, 12, 6, 15, 2, 9)
|
1
2
3
4
5
6
7
8
|
scala> a.reduceLeft(_ + _) // 数组求和res0: Int = 64scala> a.reduceLeft(_ * _) // 数组求乘积res1: Int = 388800scala> a.reduceLeft(_ min _) // 数组求最小值res2: Int = 2scala> a.reduceLeft(_ max _) // 数组求最大值res3: Int = 20 |
使用函数
自定义函数实现数组求最大值功能
|
1
2
3
4
|
scala> val a = Array(20, 12, 6, 15, 2, 9)scala> val f = (x:Int, y:Int) => x max yscala> a.reduceLeft(f)res0: Int = 20 |
实现原理
第一、第二个数的比较结果再与第三个数进行比较,以此类推。x为上一次结果,y为本次比较数值
Scala--reduceLeft的更多相关文章
- scala flatMap reduceLeft foldLeft
object collection_t1 { def flatMap1(): Unit = { val li = List(,,) val res = li.flatMap(x => x mat ...
- Beginning Scala study note(6) Scala Collections
Scala's object-oriented collections support mutable and immutable type hierarchies. Also support fun ...
- Beginning Scala study note(3) Object Orientation in Scala
1. The three principles of OOP are encapsulation(封装性), inheritance(继承性) and polymorphism(多态性). examp ...
- Scala 中下划线的用途
转载自:https://my.oschina.net/leejun2005/blog/405305 Scala 作为一门函数式编程语言,对习惯了指令式编程语言的同学来说,会不大习惯,这里除了思维方式之 ...
- Scala基础语法
/* 学慕课网上<Scala程序设计>课程跟着敲的代码 作为代码参考也是很好的 在scala_ide.org上下载eclipse IDE,新建一个worksheet,就可以像在xcode的 ...
- Scala HandBook
目录[-] 1. Scala有多cool 1.1. 速度! 1.2. 易用的数据结构 1.3. OOP+FP 1.4. 动态+静态 1.5. DSL 1.6 ...
- Spark之scala
一.什么是scala scala 是基于JVMde 编程语言.JAVA是运行在jvm上的编程语言,java 源代码通过jvm被编译成class 文件,然后在os上运行class 文件.scala是运行 ...
- Scala Collection简介
Traversable vs Iterable Traversable, Iterable 都是trait. Iterable 继承 Traversable. Traversable: 支持forea ...
- Scala _ [underscore] magic
I started learning Scala a few days before. Initially i was annoyed by the use of too many symbols i ...
- scala实现kmeans算法
算法的概念不做过都解释,google一下一大把.直接贴上代码,有比较详细的注释了. 主程序: import scala.io.Source import scala.util.Random /** * ...
随机推荐
- 可视化展示attention(seq2seq with attention in tensorflow)
目前实现了基于tensorflow的支持的带attention的seq2seq.基于tf 1.0官网contrib路径下seq2seq 由于后续版本不再支持attention,迁移到melt并做了进一 ...
- 获取请求IP
服务器获取客户端或者网页的请求,获取IP时需要注意,并不是直接 request.getRemoteAddr(); 就可以了,因为一个请求到达服务器之前,一般都会经过一层或者多层代理服务器,比如反向代理 ...
- [原]Django(1)----Django-setting中的STATIC_URL 和STATIC_ROOT 和STATICFILES_DIRS 的区别
1)对比以下两行图 理解STATIC_URL的意义 #access static files by url STATIC_URL = '/static/' 2)部署django项目的时候需要用到STA ...
- JavaSE 可变参数的方法重载
/** * 可变参数的方法重载 */ class A { public void test(int a, int b) { System.out.println(a+", "+b) ...
- D - F(x)
For a decimal number x with n digits (A nA n-1A n-2 ... A 2A 1), we define its weight as F(x) = A n ...
- 在node环境使用axios发送文件
yarn add form-data (async () => { const l = console.log; const axios = require("axios") ...
- hibernate08--OpenSessionInView
创建一个web项目,然后生成HibernateSessionFactory文件! package cn.bdqn.util; import org.hibernate.HibernateExcepti ...
- IDEA多个服务打断点 各服务乱窜的问题
Setting --> Build, Execution, Deployment --> Debugger 选中即可
- 剑指offer——python【第31题】整数1出现的次数
题目描述 求出1~13的整数中1出现的次数,并算出100~1300的整数中1出现的次数?为此他特别数了一下1~13中包含1的数字有1.10.11.12.13因此共出现6次,但是对于后面问题他就没辙了. ...
- python学习之旅(三)
Python基础知识(2):运算符 一.算术运算符 加 +,减 -,乘 *,除 /,幂 **,求余 %,取整 // 二.成员运算符 in,not in 判断一个字符是否在字符串中 name = &qu ...