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

提高审美的网站推荐东莞网络做推广公司

提高审美的网站推荐,东莞网络做推广公司,icp网站快速备案,为企业设计一个网站文章目录 方法与函数函数#xff08;又称函数值/匿名函数#xff09;定义方法注意 单参数函数多参数函数函数作为参数传递 方法将方法转换为函数方法的返回值总结 方法与函数 函数#xff08;又称函数值/匿名函数#xff09; 定义在任何地方#xff1a;函数可以定义在类… 文章目录 方法与函数函数又称函数值/匿名函数定义方法注意 单参数函数多参数函数函数作为参数传递 方法将方法转换为函数方法的返回值总结 方法与函数 函数又称函数值/匿名函数 定义在任何地方函数可以定义在类的成员中也可以定义在顶层即不在任何类或对象中这是scala3特性。不能访问类的私有成员除非函数定义在类内部否则它不能访问类的私有成员。是一等公民函数可以作为值传递可以赋值给变量可以存储在数据结构中可以作为其他函数的参数或返回值。可以使用函数字面量定义函数可以使用 符号定义匿名函数。 符号在 Scala 中用于定义匿名函数它提供了一种简洁的方式来定义函数特别是在需要将函数作为参数传递给其他函数时。匿名函数是函数式编程的重要组成部分使代码更加灵活和可组合。 在 Scala 中匿名函数也称为 lambda 表达式通常与 val 一起使用而不是 var。这是因为匿名函数本身是一个值并且你通常不希望重新赋值给这个函数。‘ 定义方法 val 函数名:函数类型返回类型 实际传入参数表达式 简洁形式这种形式的匿名函数直接将参数和表达式放在 符号的两侧。这种形式的函数没有函数体因此它的返回值是 右侧表达式的结果。 // 定义参数类型返回类型定义参数表达式 val ldsx2: (Int, Int) Unit (a, b) println(a, b) // 定义参数 参数类型表达式 val ldsx2 (a:Int, b:Int) println(a, b)带函数体形式这种形式的匿名函数使用花括号 {} 来定义函数体。函数体中的最后一个表达式是函数的返回值。 val ldsx3: (Int, Int) Unit (a, b) {println(a, b) }定义部分 (Int, Int) Unit 是 Scala 中的一种函数类型表示法它表示一个接受两个 Int 类型参数并返回 Unit 类型结果的函数。这种表示法通常用于定义匿名函数lambda 表达式或高阶函数。 具体来说 (Int, Int): 这部分表示函数接受两个参数这两个参数的类型都是 Int。: 这个符号表示函数类型。Unit: 这部分表示函数的返回类型。Unit 是 Scala 中的一个特殊类型表示没有值类似于 Java 中的 void。 因此(Int, Int) Unit 表示一个函数类型这个函数接受两个 Int 类型的参数并返回 Unit 类型的结果。这意味着这个函数执行一些操作但不返回任何值。 以下是一个使用 (Int, Int) Unit 函数类型的例子 表达式部分 (a, b): 这部分定义了匿名函数的参数列表。这个匿名函数接受两个参数分别是 a 和 b。: 这个符号表示函数字面量的开始。{ println(a, b) }: 这部分是匿名函数的主体它是一个代码块。这个代码块包含一个表达式 println(a, b)这个表达式打印参数 a 和 b 的值。 注意 在 Scala 中当匿名函数的主体只包含一个表达式时花括号 {} 可以省略。同样当匿名函数只有一个参数时圆括号 () 也是可选的。这些简化使得代码更简洁但也保持了代码的可读性。 花括号 {} 花括号用于定义匿名函数的主体。当匿名函数的主体只包含一个表达式时花括号可以省略。例如 // 使用花括号 val result1 ary.filter( n { n 2 })// 不使用花括号 val result2 ary.filter(n n 2)在这两个例子中n n 2 是一个匿名函数它接受一个参数 n 并返回一个布尔值表示 n 是否等于 2。当匿名函数的主体只有一个表达式时花括号是可选的。 圆括号 () 圆括号用于定义匿名函数的参数列表。当匿名函数只有一个参数时圆括号也是可选的。例如 // 使用圆括号 val result3 ary.filter((n) n 2)// 不使用圆括号 val result4 ary.filter(n n 2)在这两个例子中n n 2 和 (n) n 2 都是有效的匿名函数。当匿名函数只有一个参数时圆括号是可选的。 单参数函数 val square: Int Int x x * x// 调用匿名函数 println(square(5)) // 输出 25val square x:Int x*x在这个例子中square 是一个匿名函数它接受一个 Int 类型的参数 x并返回 x 的平方。 多参数函数 val add: (Int, Int) Int (a, b) a b// 调用匿名函数 println(add(3, 4)) // 输出 7在这个例子中add 是一个匿名函数它接受两个 Int 类型的参数 a 和 b并返回它们的和。 val add: (Int, Int) Int (a, b) a b这行代码定义了一个名为 add 的值它实际上是一个匿名函数也称为函数字面量。下面是详细的语法解释 val add: val 是一个关键字用于定义一个不可变的值类似于常量。add 是这个值的名称。 : (Int, Int) Int: 这部分定义了 add 的类型。(Int, Int) 表示这个函数接受两个 Int 类型的参数。 符号表示函数的参数和返回值之间的映射。Int 表示这个函数返回一个 Int 类型的结果。因此(Int, Int) Int 表示这是一个接受两个 Int 参数并返回 Int 结果的函数类型。 (a, b) a b: 符号用于将右侧的匿名函数赋值给左侧的 add。(a, b) 表示匿名函数的参数列表其中 a 和 b 是两个 Int 类型的参数。 符号表示参数和函数体之间的映射。a b 是函数体表示将参数 a 和 b 相加并返回结果。 综上所述这行代码定义了一个名为 add 的值它是一个接受两个 Int 参数并返回它们之和的匿名函数。你可以像调用普通函数一样调用 add println(add(3, 4)) // 输出 7在这个例子中add(3, 4) 调用了匿名函数 (a, b) a b其中 a 被赋值为 3b 被赋值为 4函数体 a b 计算结果为 7并打印出来。 函数作为参数传递 匿名函数通常用作高阶函数的参数。高阶函数是可以接受函数作为参数或返回函数作为结果的函数。 object Scalafunc {def main(args:Array[String]):Unit{// 匿名函数定义val fc :(Int,Int)Int (a,b) abprintln(fc(1,2))greet(ldsx)lambda_func((a,b)ab,1,3)}def greet(name: String): Unit {println(sHello, $name!)}def lambda_func(func :(Int,String)String,a:Int,b:String):Unit{val data func(a,b)println(data)}}在lambda_func中参数分为二部分共三个 func :(Int,String)String 第一个参数接受匿名函数名称 func这个参数目是设置好匿名函数名称确认匿名函数func接受的参数 与返回的数据类型 a:Int,b:String a,b 为 func所需的参数但是需要通过lambda_func传入函数内部给func调用 方法 定义在类或对象中方法定义在类或对象内部是类或对象的一部分。可以访问类的成员方法可以访问类的私有成员如变量和其他方法。不是一等公民方法不能直接作为值传递不能赋值给变量不能存储在数据结构中也不能作为其他方法的参数或返回值。使用 def 关键字定义方法使用 def 关键字定义。 object Scalafunc {val ldsx hellodef main(args:Array[String]):Unit{// 匿名函数定义val fc :(Int,Int)Int (a,b) abprintln(fc(1,2))greet(ldsx)// 访问成员println(ldsx)}def greet(name: String): Unit {println(sHello, $name!)}}将方法转换为函数 虽然方法不是一等公民但你可以通过将方法转换为函数来使用它。这可以通过在方法后面加上一个下划线 _ 来实现。 class MyClass {def greet(name: String): String {sHello, $name!} }val myObject new MyClass val greetFunction: String String myObject.greet _println(greetFunction(Scala)) // 输出 Hello, Scala!在这个例子中myObject.greet _ 将 greet 方法转换为了一个函数。 方法的返回值 在 Scala 中函数和方法不需要显式地使用 return 关键字来返回值。Scala 的函数和方法会返回其最后一个表达式的结果 def add(a: Int, b: Int): Int {a b // 这个表达式的结果会被返回 } val result add(3, 4) println(result) // 输出 7在 Scala 中过程方法是一种不返回任何值的方法。过程方法的返回类型是 Unit你可以省略 Unit因为编译器可以推断出返回类型。以下是一个过程方法的示例 // 定义Unit过程方法不会有返回值 def fun3(a:String):Unit{var info_d aaaainfo_d }// 设置返回值将会返回最后一个表达式 info_d def fun4(a:String):String{var info_d aaaainfo_d }// 当最后一个表达式是print 则报错因为print def fun4(a: String): String {var info_d ainfo_dprintln(info_d)}// 不定义返回值 自动编译判断当你返回表达式有结果时为过程函数当返回值时为返回值函数 def fun4(a: String) {var info_d aprintln(info_d,111)a } 总结 方法 是类或对象的一部分可以访问类的私有成员但不是一等公民。函数 可以在任何地方定义不能直接访问类的私有成员除非在类内部定义但它们是一等公民具有更大的灵活性和功能性。
http://www.hkea.cn/news/14400669/

相关文章:

  • 织梦网站地图调用全站文章网站建设课本
  • python建设网站网站建设 需求分析报告
  • 怎样做电子商务网站潍坊专业制氮机活性炭多少钱
  • 可以免费做中考题的网站被传媒公司骗了钱怎么办
  • 自己如何建设网站首页网站建设与维护 实训
  • 最牛的设计网站建设直播平台推广
  • dns解析失败登录不了网站网站建设实训报告作业
  • 好的网站建设网上海交通网站建设
  • 做外快的网站山西省城乡建设厅网站
  • 建设网站公司兴田德润免费可商用图片素材网站
  • 湖州公司网站建设wordpress模板如何安装
  • 安卓开发简单网站开发代码下载中国品牌策划网
  • 网站域名备案 更改吗湖北百度seo
  • 网站优化方案怎么写怎样制作软件开发
  • 郑州网站建设网络公司商标注册核名查询系统
  • 网站建设要用到编程吗网站开发的实验心德
  • 网站建设方案可以乱写吗wordpress做什么网页
  • 四川住房城乡建设网站公司网页设计模板
  • 外贸网站推广平台蓝颜seo牛代理平台盈利模式
  • 网站默认主页名网站开发的教学课程
  • 杭州人防质监站网址app自助建站
  • 银行官方网站wordpress性能好差
  • 建设一批适合青少年的网站网站制作网页
  • 用php做网站用什么软件毕业设计代做网站都有哪些
  • 广州营销型网站建设培训班网站建设设计费用
  • 怎么把别人做的网站变成自己的网站备案如何查询
  • 彩票网站APP建设免费一级域名网站
  • wordpress大型站点电商网站功能列表
  • 扁平化手机网站模板能制作网页的软件有哪些
  • 电商网站建设简单代码网页定制手机微网站