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

广告公司网站模板济南高端建站

广告公司网站模板,济南高端建站,让别人做网站图片侵权,深圳最新消息今天新增病例想要声明一个函数需要使用fun关键字 fun hello() {return println("Hello, world!") }fun main() {hello()// Hello, world! }格式: fun 方法名(参数1: 参数1类型, 参数2 : 参数2类型, ...): 返回值类型 {方法体return 返回值 }fun 方法名(参数1: 参数1类型, 参数2…

想要声明一个函数需要使用fun关键字

fun hello() {return println("Hello, world!")
}fun main() {hello()// Hello, world!
}

格式:

fun 方法名(参数1: 参数1类型, 参数2 : 参数2类型, ...): 返回值类型 {方法体return 返回值
}fun 方法名(参数1: 参数1类型, 参数2 : 参数2类型, ...){方法体
}

参数可以有一个或者多个,也可以没有参数。

举例

fun sum(x: Int, y: Int): Int {return x + y
}fun main() {println(sum(1, 2))// 3
}
fun printMessageWithPrefix(message: String, prefix: String) {println("[$prefix] $message")
}fun main() {printMessageWithPrefix(prefix = "Log", message = "Hello")// [Log] Hello
}

建议使用小驼峰命名法

默认参数值

fun printMessageWithPrefix(message: String, prefix: String = "Info") {println("[$prefix] $message")
}fun main() {printMessageWithPrefix("Hello", "Log") // [Log] HelloprintMessageWithPrefix("Hello")        // [Info] HelloprintMessageWithPrefix(prefix = "Log", message = "Hello")// [Log] Hello
}

如果跳过某一个参数,若果有后续的参数,必须指定参数名字

单一表达式方法

fun sum(x: Int, y: Int): Int {return x + y
}
fun main() {println(sum(1, 2))// 3
}

对单表达式函数,可以进行一下简化

  • 去除返回值类型
  • 去除return关键字
  • 去除{}
  • =连接方法体
fun sum(x: Int, y: Int) = x + yfun main() {println(sum(1, 2))// 3
}

Lambda 表达式

如下方法

fun uppercaseString(str: String): String {return str.uppercase()
}
fun main() {println(uppercaseString("hello"))// HELLO
}

可写为

fun main() {println({ str: String -> str.uppercase() }("hello"))// HELLO
}
  • 方法定义在{}
  • 参数后边跟着->
  • ->后边跟着方法体
  • str是参数名字
  • String是参数类型
  • 返回值为.uppercase()方法的返回值类型

固定格式,没什么可研究的

如果是无参数的Lambda方法

fun main() {{ println("hello") }()  // hello
}

Lambda表达式可以以多种方式使用

  • 将lambda分配给稍后可以调用的变量
  • 将lambda表达式作为参数传递给另一个函数
  • 从函数返回lambda表达式
  • 单独调用lambda表达式

赋值给变量

fun main() {val upperCaseString = { string: String -> string.uppercase() }println(upperCaseString("hello"))// HELLO
}

函数类型

对于使用变量接收一个Lambda函数时,可能需要对函数进行类型定义

  • 参数类型写在()内,多个类型用,分割
  • 返回值类型跟在->后边
val upperCaseString1: (String) -> String = { string -> string.uppercase() }
// 					     ↑          ↑
//                    参数类型   返回值类型		
val upperCaseString2 : () -> String = { "hello" }fun main() {println(upperCaseString("hello"))// HELLO
}

作为参数使用

fun main() {val numbers = listOf(1, -2, 3, -4, 5, -6)val positives = numbers.filter { x -> x > 0 }val negatives = numbers.filter { x -> x < 0 }println(positives) // [1, 3, 5]println(negatives) // [-2, -4, -6]
}

.fileter()方法接收一个Lambda方法作为参数

  • { x -> x > 0 } 获取List中>0的元素
  • { x -> x < 0 } 获取List中<0的元素

作为返回值在方法中返回

fun main() {fun toSeconds(time: String): (Int) -> Int = when (time) {
//                      ↑          ↑       ↑
//          toSeconds的参数及类型   ↑  要返回的lambda函数的返回值类型   
//                        要返回的lambda函数的参数类型        "hour" -> { value -> value * 60 * 60 }"minute" -> { value -> value * 60 }"second" -> { value -> value }else -> { value -> value }}fun main() {val timesInMinutes = listOf(2, 10, 15, 1)val min2sec = toSeconds("minute")val totalTimeInSeconds = timesInMinutes.map(min2sec).sum()println("Total time is $totalTimeInSeconds secs")  // Total time is 1680 secs}
}

Trailing lambdas (后置Lambda)

.fold()方法接收一个Int和一个lambda函数,调用方法时可写做

println(listOf(1, 2, 3).fold(0, { x, item -> x + item })) // 6

使用后置lambda方式时可写做

println(listOf(1, 2, 3).fold(0) { x, item -> x + item })  // 6

lambda函数放在()

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

相关文章:

  • 做视频在线观看网站建立采样点感控监督机制
  • 网站建设准备期对应网站网站除了做流量还需要什么软件
  • 网站两边广告卖汽车怎么做网站
  • 网站建设公司兴田德润专业网站建站手机
  • 优秀企业站网站凡科网站代码
  • 如何将网站指向404展厅设计费
  • 包头网络推广公司东莞做网站seo
  • 做的网站没有注册广元市住房和城乡建设局网站
  • 中国建设工程造价管理协会网站查询苏州建站免费模板
  • sirna在线设计网站广州天河区有什么好玩的
  • 郴州录取网站公司形象墙装修效果图
  • 南京企业制作网站海口seo网站推广
  • 郑州网站制作生产厂商定制孝感58同城网站建设
  • 网络优化网站智慧团建信息系统网站
  • 手机上怎么做网站深圳龙华昨天死人新闻
  • 网站迁移教材赵县住房和城乡建设局网站首页
  • 网站设计就业前景营销型网站的建设和运营
  • 东莞seo网站建设公司wordpress设置主从库
  • 个人免费网站建站关键词安次区建设局网站
  • 网站建设目录网站开发公司排行榜
  • 杭州网站建设招聘网苏州有哪些互联网公司
  • 国外以紫色为背景的网站vue网站开发注意事项
  • 凡科建网站怎么做阴影立体网络营销推广的核心是什么
  • 中小企业网站建设客户需求调查问卷网站建设与维护管理办法
  • 营销型企业网站功能织梦做的网站页面打不开
  • 宁波制作网站的公司wordpress百家主题
  • 网站logo设计在线生成响水企业做网站多少钱
  • php网站开发实例建筑培训中心
  • 丽水市住房和城建建设局网站基于asp的网站设计与实现
  • 网站名查询wordpress 获取随机文章