一、命名参数

fun isSquare(width: Int, height: Int): Boolean {return width == height
}isSquare(20, 30)

isSquare(20, 30)这样写可读性比较差,如果不去看函数声明,根本不知道每个参数含义。在Kotlin中可以做的更优雅

isSquare(width = 20, height = 30)

当调用Kotlin函数时,可以显示地标明一些参数的名称

二、默认参数

java中重载的函数很多,到那时在Kotlin中重载的函数就简单了,可以在声明函数的时候,指定参数默认值,这样就可以避免创建多个重载函数。

fun main() {test("LynnLee")//打印“LynnLee, 20, XA”test("Temo", 15)//打印“Temo, 15, XA”test("PP", 3)//打印“PP, 3, XA”
}fun test(name: String, age: Int = 20, address: String = "XA") {println("$name, $age, $address")
}

五 、Kotlin学习之命名参数默认参数相关推荐

  1. 【Flutter】Dart 面向对象 ( 类定义 | 类的继承 | 私有变量 | 可选参数 | 默认参数 | 初始化列表 )

    文章目录 一. Dart 面向对象 二. 类定义 三. 类的继承 四. 私有变量 五. 可选参数与默认参数 六. 初始化列表 七. 完整代码示例 八. 相关资源 一. Dart 面向对象 OOP 基本 ...

  2. 【TS】函数重载--可选参数--默认参数

    可选参数–默认参数 在ts中定义的数据类型,某些情况下只需要传入定义数据类型的一部分参数,比如:id .name.age.address,此时需要修改用户的名称,那么只需要传入id.name就够了:某 ...

  3. 软件测试学习 之 Python 函数默认参数

    转载说明 作者:珞樱缤纷 出处:博客园 博文:Python进阶-函数默认参数 Python进阶-函数默认参数 写在前面 如非特别说明,下文均基于Python3 一.默认参数 python为了简化函数的 ...

  4. python函数可以按照参数名称方式传递参数_python函数传入参数(默认参数、可变长度参数、关键字参数)...

    1.python中默认缺省参数----定义默认参数要牢记一点:默认参数必须指向不变对象! 1 def foo(a,b=1):2 printa,b3 4 foo(2) #2 1 5 foo(3,100) ...

  5. PYTHON 笔记:函数的参数(关键字参数,默认参数,可变长参数,可变长的关键字参数)

    一般的函数参数是位置参数,位置不对会出问题 1.关键字参数 使用参数名提供的参数就是关键字参数,有了关键字参数,顺序就不会有影响. >>>def printGrade(name,ID ...

  6. 学习笔记(4):Python语言家族-Python函数参数-默认参数、可变参数

    立即学习:https://edu.csdn.net/course/play/31631/478638?utm_source=blogtoedu 为什么会报 none

  7. Python位置参数、默认参数、可变参数、关键字参数、命名关键字参数、命名位置参数

    前言 定义一个名为temp的函数,参数列表共4个参数 def temp(first,second="Hello World",*args,**kwargs)print(first) ...

  8. c++学习笔记内联函数,函数重载,默认参数

    c++学习笔记内联函数,函数重载,默认参数 1 inline内联函数 C++中的const常量可以替代宏常数定义,如: const int A = 3;  #define A 3 C++中是否有解决 ...

  9. 默认参数,命名参数,可变参数

    文章目录 默认参数 命名参数 可变参数 默认参数 def sayName(name:String="PK"): Unit ={//此处默认参数为PKprintln(name)}sa ...

最新文章

  1. chmod a+r *:用户自己使用此命令,柯给所有用户添加可读的权限
  2. 看例子,学 Python(二)
  3. python判断字母左右两边的大写字母有_python习题,,1.26个字母大小写
  4. mysql path conflict_yum安装MySQL出现conflict problem
  5. mysql数据库及应用_mysql数据库介绍及应用
  6. 270 扩展固态硬盘_游戏人的扩展坞应该是怎样?
  7. IaaS, PaaS和SaaS公司都做些什么
  8. Bailian4073 最长公共字符串后缀【文本处理】
  9. ubuntu16.04下ROS操作系统学习笔记(七 )机器语音-语音听写-科大讯飞SDK调用
  10. 研究生数学建模竞赛准备
  11. java.lang.InstantiationException: class has no zero argument constructor
  12. matlab 读写excel数据 计算股票振幅收益率
  13. makefile 指定文件搜索路径和文件生成路径
  14. 宏基Acer笔记本热销火热机
  15. 博客已死?移动互联网时代博客的价值
  16. 【大数据框架及实战2】---初识
  17. 区块链溯源是什么?一文带您读懂! 1
  18. SAPMM模块不同维度采购模式分类
  19. uva 1626 Brackets sequence
  20. 声传播推迟时间计算对飞行器部件噪声预测的影响

热门文章

  1. 操作系统中 完成时间,周转时间,带权周转时间和到达时间,服务时间是什么关系,怎么算
  2. 原始套接字的花花世界
  3. Android Systrace 基础知识(10) - Binder 和锁竞争解读
  4. Zookeeper 的基本使用
  5. cannot be resolved to a type 错误解决
  6. CNN原理及模型参数
  7. MATLAB怎么生成一个周期信号,matlab产生方波脉冲和周期性方波信号
  8. 【高等数学】函数连续、可导、可微,洛必达法则使用条件、一阶可导、一阶连续可导、二阶可导、二阶连续可导
  9. ORB-SLAM3 IMU(李群)+Frame+KeyFrame+MapPoint
  10. 圣思园——Java SE Lesson 16