当前位置: 首页 > news >正文

windows做网站服务器吗网站建设二级菜单

windows做网站服务器吗,网站建设二级菜单,昆山住房与城乡建设局官网,wordpress汉化音乐主题目录 概述函数scala函数和方法的区别第一种第二种方法转函数 函数柯里化 结束 概述 函数 vs 方法 1.定义 方法:def函数:> 2.方法本质上是一个特殊的函数3.函数是一等公民,函数可以当做值来传递,方法的参数,返回值…

目录

  • 概述
  • 函数
    • scala函数和方法的区别
      • 第一种
      • 第二种
      • 方法转函数
    • 函数柯里化
  • 结束

概述

函数 vs 方法

  • 1.定义
    • 方法:def
    • 函数:=>
  • 2.方法本质上是一个特殊的函数
  • 3.函数是一等公民,函数可以当做值来传递,方法的参数,返回值

函数

scala函数和方法的区别

第一种

var/val 函数名称 = (参数列表) => {函数体}

object FunctionDemo {def main(args: Array[String]): Unit = {test01()}/*** 函数定义:第一种* var/val 函数名称 = (参数列表) => {函数体}*/def test01() = {// f1:函数名称// (Int,Int) :参数列表// 返回值val f1 = (a: Int, b: Int) => {a + b}println(f1(4, 5))}
}

执行结果如下:
在这里插入图片描述

第二种

val/var 函数名称:(入参类型) => 返回值类型 =(入参的引用) => {函数体}

object FunctionDemo {def main(args: Array[String]): Unit = {test02()}/*** 函数的定义方式二* val/var 函数名称:(入参类型) => 返回值类型 =(入参的引用) => {函数体}*/def test02(): Unit = {val f2: (Int, Int) => Int = (a: Int, b: Int) => {a + b}val f3: (Int, Int) => Int = (a, b) => {a + b}println(f2(3, 2))}
}

执行结果如下:
在这里插入图片描述

方法转函数

在Scala中,方法本身并不是值,而是函数。因此,一个方法不能直接赋值给一个val变量,但是可以将方法转换为函数并进行赋值。

object FunctionDemo {def main(args: Array[String]): Unit = {test03()}def test03(): Unit = {def sayHello(name: String): Unit = {println(s"Hell:$name")}// 将方法赋值给一个函数、变量:空格 下划线// 下划线 总结val sayHelloFunc = sayHello _sayHelloFunc("测试方法变函数")def add(a: Int, b: Int) = a +  bval add1 = add _println(add1(1, 2))val add2: (Int, Int) => Int = add// 将函数当方法的参数def foo(op:(Int,Int) => Int) = {op(10, 20)}println(foo(add2))def foo2(op:()=>Unit)={op()}def m =println("hello world")foo2(m _)}
}

执行结果:
在这里插入图片描述

函数柯里化

只传递给函数一部分参数来调用它,让它返回一个函数去处理剩下的参数

来看一下 js 中的柯里化与 scala 的实现区别。

// 非柯里化
function add(x, y) {return x + y;
}add(1, 2) === 3; // true// 柯里化
function addX(y) {return function(x) {return x + y;};
}addX(2)(1) == 3; // true
object FunctionDemo {def main(args: Array[String]): Unit = {test05()}def test05(): Unit ={def isEq(x:String)(y:String)={x.toLowerCase == y.toLowerCase}println(isEq("A")("B"))println(isEq("A")("a"))}
}

执行结果如下:
在这里插入图片描述

结束

scala函数和方法的区别 至此结束,如有疑问,欢迎评论区留言。

http://www.yayakq.cn/news/494463/

相关文章:

  • 哈尔滨企业自助建站太仓网站建设企业网站
  • 怎样免费做自己的网站app ui模板
  • 东凤网站建设深圳专业网站建设公司多少钱
  • 邢台市网站开发公司有哪些徐州集团网站建设公司
  • 平面设计软件网站一个人做网站需要多久
  • seo服务如何收费温州seo网站管理
  • 一手房发帖网站怎样做做暖网站
  • 做百度网站多少钱企业信息管理系统er图
  • 做微电影模板下载网站如何做外贸soho做网站
  • 徐州社交网站企业网站常见问题
  • 网站最近收录开源网站推广
  • 开网上授课的网站应该怎么做建设通手机版
  • 网站建设下一步工作计划外贸网站 语言
  • 上海本地网站建设wordpress并发数
  • 郑州加盟做网站带财运的公司名字
  • 石家庄网站制作招聘用php做网站不用框架
  • 四子王旗建设局网站网站建设要哪些工作
  • 旅游后台网站北京前端开发的薪资水平
  • .net wap网站建设银行网站怎么查自己账号吗
  • wordpress建站容易吗seo1现在怎么看不了
  • 北京网站建设策划律师微网站建设
  • 温州自助模板建站注册深圳公司不在深圳经营
  • 江门做网站设计站点创建成功
  • 网站开发包括网站的wap网站程序
  • 用vs做购物网站代码茶楼网站
  • 网站信息备案变更 哪里做萍乡网站建设
  • 个人网站建设小江无锡网站建设标准
  • 做书的网站有哪些内容吗福州免费网站建站模板
  • 网站不交换友情链接可以吗百度seo公司有哪些
  • 抓好门户网站建设网站地图html模板