Kotlin 函数
至于什么函数,在计算机里面就是一个密闭的执行程序的代码块(个人理解)
我们先来看看什么是函数
fun main(agrs : Array<String>)
{ println("Hello Kotlin") }
这就是一个函数,只不过是程序的主函数。
解释:
fun 是function的缩写 是函数的意思 在kotlin的里面写一个函数是必不可缺的。
mian是这个函数的名字。
(agrs : Array<String>)是函数的参数,也可以是无参数。 这里面的参数叫做形参
{} 一堆花括号。
程序代码要写花括号里面。
这是一个基本的函数。一个函数有很多种情况。
函数是可以返回值,可以接受参数。当然也可以不接收参数,而返回值,或者可以接收参数 而不返回值。
再者不接收参数,不返回值。
不过呢,没有返回类型就不可以返回值。
那么Kotlin的返回值和参数该如何写呢?
fun go(NAME:String):String
{
return NAME
}
这个就是一个接收参数并返回值。
这个函数的返回值和参数是如何写的呢。
格式:
go(NAME:String)括号里写的是参数,这个参数是有类型的,无类型 ,注意的是,在函数里面不要用var自动推断,一定要把类型给写出来了!!!
:String 是 返回值的类型,写在参数括号后,使用冒号。
return 是返回值,因为有写返回值类型,那么在函数里面必须要写返回值。
如果没有返回值就可以不用写这个return。 根据情况。
比如:
fun go(NAME:String)
{
println(NAME)
}
根据情况,来写函数是否接受参数和是否有返回值。
那么如何调用调用函数呢?
看下面的代码:
fun main(agrs : Array<String>)
{ var re=go("这是一个简单的有返回值,有参数的Kotlin函数")
print(re) }
fun go(Name:String):String //有返回值
{
return Name
}
解释:
var re=go("这是一个简单的有返回值,有参数的Kotlin函数") 这个地方就是调用函数,并接受返回值。
因为=是赋值号,可以将等号右面表达式赋值与左面。
go("这是一个简单的有返回值,有参数的Kotlin函数") 这就是调用go函数,因为go有参数,是Stirng类的 所以我们就直接写进字符串就可以了。
无参数无返回值调用:
fun main(agrs : Array<String>)
{ go() }
fun go()//有返回值
{
print("调用参数")
}
解释:
为什么写在main函数内? 因为是main是主函数,程序第一个运行的函数。
所以写在main。
go()是调用函数,因为go无参数,括号里面就不用写参数。因为无返回值,所以go()也不用接受返回值。
Kotlin 函数的更多相关文章
- Kotlin函数与Lambda表达式深入
Kotlin函数: 关于Kotlin函数在之前也一直在用,用fun来声明,回忆下: 下面再来整体对Kotlin的函数进行一个学习. 默认参数(default arguments): 先来定义一个函数: ...
- kotlin函数加强
在之前已经接触过了kotlin的函数了,这里再次加强学习下它,下面开始吧! Kotlin函数编写规则: 对照函数来理解其写法: 演练巩固: ①.编写函数, 实现四则运算. 接着来实现其它三个运算: 然 ...
- Kotlin函数中默认参数
Java不支持默认参数.但kotlin函数却可以 package loaderman.demo class Customer(var name:String ="name"){// ...
- kotlin函数api
原 Kotlin学习(4)Lambda 2017年09月26日 21:00:03 gwt0425 阅读数:551 记住Lambda的本质,还是一个对象.和JS,Python等不同的是,Kotlin ...
- Kotlin 函数和函数表达式
学习了kotlin 的控制. 其中最为强大的是各种控制可以直接作为表达式来使用. 那么在kotlin中,函数也是可以作为表达式来使用. 而且kotlin中函数的创建方式有很多方式. 第一种: 传统创建 ...
- Kotlin函数使用综述与显式返回类型分析
位置参数与具名参数: 继续接着上一次https://www.cnblogs.com/webor2006/p/11498842.html的方法参数学习,再定义一个函数来说明具名参数的问题: 调用一下,先 ...
- kotlin函数和函数式表达式
这次的写法可能有些怪异,但是如果熟悉java8的Lambda表达式的话其实理解起来很顺其自然[参考博客:http://www.cnblogs.com/webor2006/p/7705130.html] ...
- kotlin函数的参数和返回值
fun main(arg: Array<String>) { val asList = asList(, , , , , ) println(asList) } fun <T> ...
- Kotlin语法(函数和lambda表达式)
三.函数和lambda表达式 1. 函数声明 fun double(x: Int): Int { } 函数参数是用 Pascal 符号定义的 name:type.参数之间用逗号隔开,每个参数必须指明类 ...
随机推荐
- [置顶]
STM32的ADC1采集多条通道,可以不使用DMA功能吗?
类似的问题 为什么我采集5条通道的电压,而采集到的值却都是第一条的呢? 我什么时候需要使用DMA功能? Ⅰ关于ADC的一些知识 STM32的ADC是一种12位逐次逼近型的模拟数字转换器.它有多达18条 ...
- js中的Math
js中的Math Math.round 取最接近的整数 Math.round(-2.7) // -3 Math.ceil 向上取整 Math.ceil(1.1) // 2 Math.floor 向下取 ...
- MFC 菜单栏杂记
1.关于为毛要使用detach()函数 CMenu menu; menu.LoadMenu(IDR_MAINFRAME); SetMenu(&menu); menu.Detach(); //如 ...
- Flask之邮件扩展
4.4 Flask—Mail 在开发过程中,很多应用程序都需要通过邮件提醒用户,Flask的扩展包Flask-Mail通过包装了Python内置的smtplib包,可以用在Flask程序中发送邮件. ...
- 使用JAVA爬取博客里面的所有文章
主要思路: 1.找到列表页. 2.找到文章页. 3.用一个队列来保存将要爬取的网页,爬取队头的url,如果队列非空,则一直爬取. 4.如果是列表页,则抽取里面所有的文章url进队:如果是文章页,则直接 ...
- 通过DG_BROKE搭建Oracle11g_adg
1.环境 db_primary db_stanby db版本 11.2.0.4.0 11.2.0.4.0 os版本 centos 6.4 centos 6.4 db_unique_name newte ...
- 13-EasyNetQ之发布者确认
AMQP发布消息默认情况下是非事务性的,不能确保你的消息真正送达代理.AMQP可以去指定事务性发布,但是RabbitMQ这样会非常慢,我们没有让EasyNetQ API去支持此功能.为了高效的确保投递 ...
- Bootstrap 学习资料
1.Bootstrap中文文档 2.Bootstrap3.1.1 DEMO 3.Bootstrap教程 4.Sco.js--Bootstrap javascript组件的增强版 如果,您认为阅读这篇博 ...
- Javamail简单使用案例
邮件开发环境搭建 邮件服务器 易邮邮件服务器 配置如下 邮件客户端 Foxmail 配置如下 使用Javamail发送邮件 下载 javamail-samples.zip javax.mail.jar ...
- elasticsearch配置小记(转)
原文 http://bigbo.github.io/pages/2015/04/10/elasticsearch_config/ 基于 elasticsearch 1.4.4 版本.安装方式为RPM ...