Kotlin入门笔记(二) Kotlin 函数的简单介绍
前言:本教程最好在有JAVA的基础下进行学习
一、main函数的使用
(1) 学过java的小伙伴们应该知道,java的main方法是静态的,且写在class中。Kotlin就有所不同,一般的写法可以将main函数写在class外
class Test{}
/** 我是main入口函数 **/
fun main(args: Array<String>) {var test=Test();println("main在class外执行!")
}
运行结果:
(2) 当然也有将main函数写在class内的方法
(此段转载自:https://blog.csdn.net/qq_19306415/article/details/81902197)
class Test{companion object {/** 我是main入口函数 **/@JvmStaticfun main(args: Array<String>) {var test=Test();}}
}
解释:
companion object { //我是静态块
/**
这里面定义的静态变量跟静态方法,类似java的:static
**/
}
相当于java中的
public static void main(String[] args){
}
原文链接:https://blog.csdn.net/qq_19306415/article/details/81902197
二、普通函数
声明:使用fun关键词进行声明(function的缩写)
格式:
fun method(param1 : Int , param2 : Int) : Int {return 0
}
PS:声明函数返回值类型,如果是Void可以不写(省略)
上述 method 指的是 方法名 , 参数一 与 参数二 指的是参数名,方法名 与 参数名 可以自己修改。如果不想接收任何参数,那么可以只写一对空括号。(这一点与java相同)
二、内置函数
定义 : 由Kotlin提供的一系列的内置函数
简单的一些内置函数:
如:Int max(Int num)
用法:(要导包: import kotlin.math.max)
fun largerNumber(num1 : Int , num2 : Int) : Int {return max(num1,num2)
}
还有一些复杂的内置函数,如
- let函数
- also函数
- with函数
- run函数
- apply函数
- ...
今天就不列举了,但是以上是偏Java的一种写法,Kotlin提供了一种更方便的语法格式:
(1) 当一个函数中只有一行代码时,Kotlin允许我们不必写函数体,可以将唯一的一行代码用 "=" 连接在尾部
fun largerNumber(num1 : Int , num2 : Int) : Int = max(num1 , num2)
但是,其实还可以再简化...
(2) 由于max()函数返回的是Int值,largerNumber()又在尾部使用了等于号,因此Kotlin可自动推导出largerNumber()函数的返回也必然是一个Int值,这样就不用显示的声明Int
fun largerNumber(num1 : Int , num2 : Int) = max(num1 , num2)
Kotlin小白,在学习郭霖老师的作品时做的笔记。若有错误之处欢迎指出!感谢阅读!
参考:
Kotlin如何在类里面创建main函数_新猿的博客-CSDN博客_kotlin main函数
《第一行代码 Android (第三版)》 ---郭霖
Kotlin入门笔记(二) Kotlin 函数的简单介绍相关推荐
- Kotlin教程(二)函数
写在开头:本人打算开始写一个Kotlin系列的教程,一是使自己记忆和理解的更加深刻,二是可以分享给同样想学习Kotlin的同学.系列文章的知识点会以<Kotlin实战>这本书中顺序编写,在 ...
- MySql入门笔记二~悲催的用户
这些是当年小弟的MySql学习笔记,木有多么复杂的结构操作,木有多炫丽的语句开发,木有...总之就是木有什么技术含量... 日复一日,彪悍的人生伴随着彪悍的健忘,运维操作为王,好记性不如烂笔头,山水有 ...
- python入门笔记——内置函数作业
python入门笔记--内置函数作业 # 求三组连续自然数的和:求出1到10,20到30,35到45的三个和 sum1 = sum(range(1,11)) sum2 = sum(range(20,3 ...
- python爬虫入门教程(二):开始一个简单的爬虫
2019/10/28更新 使用Python3,而不再是Python2 转载请注明出处:https://blog.csdn.net/aaronjny/article/details/77945329 爬 ...
- WPF自学入门(十一)WPF MVVM模式Command命令 WPF自学入门(十)WPF MVVM简单介绍...
WPF自学入门(十一)WPF MVVM模式Command命令 在WPF自学入门(十)WPF MVVM简单介绍中的示例似乎运行起来没有什么问题,也可以进行更新.但是这并不是我们使用MVVM的正确方式.正 ...
- python学习笔记(一)Python 简单介绍
Python学习笔记(一)Python 简单介绍 Python介绍 Python简介 Python应用领域 Python是解释型的语⾔ 编译和解释的区别是什么? 编译型vs解释型 编译型 解释型 Py ...
- 2021年大数据ELK(二):Elasticsearch简单介绍
全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 系列历史文章 一.Elasticsearch简介 1.介绍 2.创始人 二.E ...
- kotlin学习笔记——内联函数
在Kotlin中,使用inline修饰符标记内联函数. 与普通函数不同,内联函数在编译时被替换掉,不是真正的函数调用. 如kotlin提供的with函数,如下: @kotlin.internal.In ...
- kotlin入门笔记
为什么使用Kotlin 网上关于kotlin的讨论已经热了一个多月了,究竟怎么看待这门语言在Android开发中的应用前景,我觉得还是要留给时间去验证."我思故我在",自己的思考在 ...
- Kotlin入门(1)搭建Kotlin开发环境
Kotlin做为一门编程语言,已经出现好几年了,但此前在国内并不闻名.自从5月份谷歌宣布它成为Android的官方开发语言之后,Kotlin猛然窜红了,虽说短期内Kotlin无法取代Java,但对于一 ...
最新文章
- 思科、华为交换机的一些命令
- ./include/caffe/util/cudnn.hpp: error: too few arguments to function ‘SetPooling2dDescriptor
- 工业以太网交换机:核心优点解析
- 原来记录系统日志那么简单【Java】【SpringBoot】【Mybatis Plus】【AspcetJ】
- v-for能倒序遍历吗_神级遍历——morris
- python内存池机制,python基础—12python内存管理机制
- GdiPlus[40]: 不该忽略的一些基础结构
- Ember项目引入js依赖
- android 分割数字图片,Android开发自定义View实现数字与图片无缝切换的2048
- Win11麦克风有回音怎么消除 Win11麦克风回声怎么调
- mysql按升序创建索引_MySQL 降序索引 (Descending Indexes)
- Oracle数据库将数字金额转换为大写汉字
- xp 无法关闭计算机,xp系统关机时一直显示正在关机状态却无法关键的解决方法...
- Logic Pro X中文汉化版
- Adobe Reader 离线安装包下载 大全
- nodejs将图片的像素值提取出来将RGBA转换成16位彩色
- linux 系统下开源软件 ngspice 仿真实例,调侃Spice历史和GNU/Linux下做Spice电路仿真...
- 删除多余迅雷7插件,加快启动速度
- 【独立版】帮扶极速版任务系统V3.1.3,八戒帮扶V5独立版
- 微信小程序开发选取相册照片/拍照API调用
热门文章
- jQuery封装的表单验证,模仿网易或者腾讯登录的风格
- 局域网关机助手 v1.0.bat 批处理
- android 8.0如何编译,ubuntu16.0编译Android 8.0 Android O记录
- 设计*** 得到远程主机的注册表
- 对拷的硬盘无法修改计算机名,如何实现硬盘对拷?两台电脑硬盘对拷资料详细图解(非GHOST式)(2)...
- 就业协议和劳动合同是一回事吗?
- 已知日程表软件用户手册
- 周鸿祎眼中的产品经理
- spring boot工作计划管理软件 毕业设计-附源码181638
- 电脑无法解析个别域名(如:无法访问MDN)