文档章节

2016/01/29 Scala学习4

倔强的萝卜
 倔强的萝卜
发布于 2016/01/29 09:55
字数 351
阅读 11
收藏 0
  1. 可变参数

    Scala 允许你指明函数的最后一个参数可以是重复的,即我们不需要指定函数参数的个数,可以向函数传入可变长度参数列表。Scala 通过在参数的类型之后放一个星号来设置可变参数(可重复的参数)。例如:

    object MyScalaClass3{
      def main(args:Array[String]) {
        printStrings("A", "BB", "CCC")
      }
      def printStrings(args:String*) : Unit = {
        for (arg <-args){
          println(arg)
        }
      }
    }

  2. 函数的柯里化

    柯里化(Currying)指的是将原来接受两个参数的函数变成新的接受一个参数的函数的过程。新的函数返回一个以原有第二个参数为参数的函数。

    def add(x:Int)=(y:Int)=>x+y

    那么这个函数是什么意思呢? 接收一个x为参数,返回一个匿名函数,该匿名函数的定义是:接收一个Int型参数y,函数体为x+y。对add的调用代码如下:

    val result = add(1)
    val sum = result(2)
    第一行返回一个result函数,那result的值应该是一个匿名函数:(y:Int)=>1+y
    所以为了得到结果,我们继续调用result。第二行代码,求出了1+2的值,所以结果是3,而这两行代码可以合成一行:

    val x = add(1)(2), 得到结果也是3,存在变量x中。

     

© 著作权归作者所有

共有 人打赏支持
倔强的萝卜
粉丝 1
博文 21
码字总数 15733
作品 0
长春
2016大数据唯一完整版教程

大数据教程(2016版) 链接: https://pan.baidu.com/s/1qXT9WwG 密码: qrht 2015-12-22_linux 2015-12-24_linux 2015-12-29_MapReduce 2015-12-31_MapReduce 2016-01-05_MapReduce 2016-01-0......

大象分享
2017/02/15
1K
0
第864期机器学习日报(2017-01-29)

机器学习日报 2017-01-29 深度学习MATLAB实例入门 @爱可可-爱生活 可以应用在CPU和GPU上高效并行的CTC代码库 @爱可可-爱生活 “Benchmarking State-of-the-Art Deep Learning Software Tool...

ai100_ml
2017/01/30
0
0
Spark常见问题汇总

注意:如果Driver写好了代码,eclipse或者程序上传后,没有开始处理数据,或者快速结束任务,也没有在控制台中打印错误,那么请进入spark的web页面,查看一下你的任务,找到每个分区日志的s...

ifree613
2016/03/03
8.7K
0
Scala 2.12 发布计划

Scala 2.12 会要求 Java 8,Scala 2.11 将会继续支持 Java 6。以下是 Scala 2.11 和 Scala 2.12 的共有特性: Compile lambdas efficiently using method handles. (Separate compatibility ......

oschina
2014/07/01
2.4K
6
spark相关错误和解决方法

1 概述 Spark的on Yarn模式,其资源分配是交给Yarn的ResourceManager来进行管理的,但是目前的Spark版本,Application日志的查看,只能通过Yarn的yarn logs命令实现。 在部署和运行Spark App...

不语者
2016/11/04
385
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

咕泡-Factory设计模式笔记

个人感悟: 设计模式都是处理复杂问题的,如果问题本身很简单,使用设计模式反而累赘,增加了开发的复杂性 遇到最简单的情况,直接 new 如果创建对象的过程简单,但是需要匹配不同情况,返回...

职业搬砖20年
22分钟前
0
0
Java中的锁分类

在读很多并发文章中,会提及各种各样锁如公平锁,乐观锁等等,这篇文章介绍各种锁的分类。介绍的内容如下: 公平锁/非公平锁 可重入锁 独享锁/共享锁 互斥锁/读写锁 乐观锁/悲观锁 分段锁 偏...

Funcy1122
31分钟前
0
0
Ansible随机数

想为你的Ansible剧本取一个随机数?还想在接下来的运行中保持系统的等幂性?这里有一个答案。 假如,你要为一大批服务器设置cron任务,却不想让它们同时启动,你可以这样设置分钟数: minute...

大别阿郎
40分钟前
0
0
SpringCloud之服务注册中心Eureka

本系列介绍的配置均基于 Spring Boot 2.0.1.RELEASE 版本和 Spring Cloud Finchley.SR1 服务注册中心 Spring Cloud 已经帮我们实现了服务注册中心,我们只需要很简单的几个步骤就可以完成。 ...

熊小飞呀
今天
15
1
“Comparison method violates ...”异常的再现方法

前提条件:JDK8 代码: import java.util.ArrayList;import java.util.Collections;import java.util.Comparator;import java.util.List;public class Test { public stat......

hunterli
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部