至于什么函数,在计算机里面就是一个密闭的执行程序的代码块(个人理解)

我们先来看看什么是函数

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 函数的更多相关文章

  1. Kotlin函数与Lambda表达式深入

    Kotlin函数: 关于Kotlin函数在之前也一直在用,用fun来声明,回忆下: 下面再来整体对Kotlin的函数进行一个学习. 默认参数(default arguments): 先来定义一个函数: ...

  2. kotlin函数加强

    在之前已经接触过了kotlin的函数了,这里再次加强学习下它,下面开始吧! Kotlin函数编写规则: 对照函数来理解其写法: 演练巩固: ①.编写函数, 实现四则运算. 接着来实现其它三个运算: 然 ...

  3. Kotlin函数中默认参数

    Java不支持默认参数.但kotlin函数却可以 package loaderman.demo class Customer(var name:String ="name"){// ...

  4. kotlin函数api

    原 Kotlin学习(4)Lambda 2017年09月26日 21:00:03 gwt0425 阅读数:551   记住Lambda的本质,还是一个对象.和JS,Python等不同的是,Kotlin ...

  5. Kotlin 函数和函数表达式

    学习了kotlin 的控制. 其中最为强大的是各种控制可以直接作为表达式来使用. 那么在kotlin中,函数也是可以作为表达式来使用. 而且kotlin中函数的创建方式有很多方式. 第一种: 传统创建 ...

  6. Kotlin函数使用综述与显式返回类型分析

    位置参数与具名参数: 继续接着上一次https://www.cnblogs.com/webor2006/p/11498842.html的方法参数学习,再定义一个函数来说明具名参数的问题: 调用一下,先 ...

  7. kotlin函数和函数式表达式

    这次的写法可能有些怪异,但是如果熟悉java8的Lambda表达式的话其实理解起来很顺其自然[参考博客:http://www.cnblogs.com/webor2006/p/7705130.html] ...

  8. kotlin函数的参数和返回值

    fun main(arg: Array<String>) { val asList = asList(, , , , , ) println(asList) } fun <T> ...

  9. Kotlin语法(函数和lambda表达式)

    三.函数和lambda表达式 1. 函数声明 fun double(x: Int): Int { } 函数参数是用 Pascal 符号定义的 name:type.参数之间用逗号隔开,每个参数必须指明类 ...

随机推荐

  1. [置顶] STM32的ADC1采集多条通道,可以不使用DMA功能吗?

    类似的问题 为什么我采集5条通道的电压,而采集到的值却都是第一条的呢? 我什么时候需要使用DMA功能? Ⅰ关于ADC的一些知识 STM32的ADC是一种12位逐次逼近型的模拟数字转换器.它有多达18条 ...

  2. js中的Math

    js中的Math Math.round 取最接近的整数 Math.round(-2.7) // -3 Math.ceil 向上取整 Math.ceil(1.1) // 2 Math.floor 向下取 ...

  3. MFC 菜单栏杂记

    1.关于为毛要使用detach()函数 CMenu menu; menu.LoadMenu(IDR_MAINFRAME); SetMenu(&menu); menu.Detach(); //如 ...

  4. Flask之邮件扩展

    4.4 Flask—Mail 在开发过程中,很多应用程序都需要通过邮件提醒用户,Flask的扩展包Flask-Mail通过包装了Python内置的smtplib包,可以用在Flask程序中发送邮件. ...

  5. 使用JAVA爬取博客里面的所有文章

    主要思路: 1.找到列表页. 2.找到文章页. 3.用一个队列来保存将要爬取的网页,爬取队头的url,如果队列非空,则一直爬取. 4.如果是列表页,则抽取里面所有的文章url进队:如果是文章页,则直接 ...

  6. 通过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 ...

  7. 13-EasyNetQ之发布者确认

    AMQP发布消息默认情况下是非事务性的,不能确保你的消息真正送达代理.AMQP可以去指定事务性发布,但是RabbitMQ这样会非常慢,我们没有让EasyNetQ API去支持此功能.为了高效的确保投递 ...

  8. Bootstrap 学习资料

    1.Bootstrap中文文档 2.Bootstrap3.1.1 DEMO 3.Bootstrap教程 4.Sco.js--Bootstrap javascript组件的增强版 如果,您认为阅读这篇博 ...

  9. Javamail简单使用案例

    邮件开发环境搭建 邮件服务器 易邮邮件服务器 配置如下 邮件客户端 Foxmail 配置如下 使用Javamail发送邮件 下载 javamail-samples.zip javax.mail.jar ...

  10. elasticsearch配置小记(转)

    原文  http://bigbo.github.io/pages/2015/04/10/elasticsearch_config/ 基于 elasticsearch 1.4.4 版本.安装方式为RPM ...