当前位置:网站首页>六、Kotlin基础学习:函数
六、Kotlin基础学习:函数
2022-07-30 05:43:00 【¥伊人独醉】
1、函数的定义

MainActivity.kt
效果:
【案例2】定义排序函数
MainActivity.kt
效果:
2、函数的类型
3、单表达式函数
函数内部是一个表达式,也就是函数体非常简单,只有一句可以执行
4、函数的参数
(1)具名参数
(2)默认参数
(3)可变参数
注意:

5、函数的分类
(1)顶层函数
创建一个函数在类之外,直接在包下。
(2)成员函数
在一个类内部定义,就是成员函数
(3)局部函数
语法:
fun 函数名(){
fun 函数名(){
}
}
【案例】
6、局部函数——举例
【案例】输入一组数,求其中最大值
MainActivity.kt
效果:
7、递归函数
自己调用自己。需要设置终止条件。例如:第100步是由第99步完成后来完成。直到第1步完成,开始逐步返回。
【案例】累和
从1+。。。+100
将此问题变成:
从(1+。。。+100),变成从(1+。。。+99),再加100
从(1+。。。+99),变成从(1+。。。+98),再加99
……
从(1+2),变成返回1加上2
递归函数如果调用写在函数体最后一行,称之为尾递归函数,这样可以节约栈空间,可以提高运行效率。
8、函数的重载
函数名称一样,但是签名不一样。
【案例】
【案例】递归再举例
边栏推荐
- 【数仓】数据质量
- Bypassing the file upload vulnerability
- Invalid bound statement (not found)出现的原因和解决方法
- Deserialization character escape
- Arthas command parsing (watch/tt/sc)
- Trust anchor for certification path not found.异常解决方法。
- MySQL special statement and optimizer
- protobuf编码及网络通信应用(一)
- MySQL window function
- [Net Ding Cup 2020 Qinglong Group] AreUSerialz
猜你喜欢
awd --waf deployment
线程的5种状态
Jackson serialization failure problem - oracle data return type can't find the corresponding Serializer
十八、Kotlin进阶学习:1、挂起函数执行的顺序;2、使用 async 和 await 异步执行挂起函数;3、协程的调度器;4、父子协程;
c#下Web3合约空投、转账调用代码
Use kotlin to extend plugins/dependencies to simplify code (after the latest version 4.0, this plugin has been deprecated, so please choose to learn, mainly to understand.)
The types of data structures and MySQL index
Function 函数式接口及应用
"MySQL Advanced Chapter" four, the storage structure of the index
MySQL data types and footprint
随机推荐
shardingsphere 分库分表及配置示例
二十二、Kotlin进阶学习:简单学习RecyclerView实现列表展示;
Mysql 客户端常见异常分析
冒泡排序、选择排序、插入排序、快速排序
MySQL 索引的数据结构及类型
第一个WebAssembly程序
十八、Kotlin进阶学习:1、挂起函数执行的顺序;2、使用 async 和 await 异步执行挂起函数;3、协程的调度器;4、父子协程;
Student management system
[MATLAB]图像处理——交通标志的识别
学生成绩管理系统(C语言版)
网上说的挖矿究竟是什么? 挖矿系统开发详解介绍
oracle行转列、列转行总结
SQL Server database generation and execution of SQL scripts
Usage of exists in sql
Detailed explanation of regular expression syntax and practical examples
MySQL - 函数及约束命令
FastAPI Quick Start
【OS】操作系统高频面试题英文版(1)
【数仓】数据仓库高频面试题题英文版(1)
Arthas 命令解析(jvm/thread/stack/heapdump)