Kotlin基本语法1到函数

这篇具有很好参考价值的文章主要介绍了Kotlin基本语法1到函数。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.range表达式

Kotlin基本语法1到函数,Kotlin,kotlin,java,前端

fun main() {
    var age = 12.3
    if (age in 0.0..3.3){
       println("婴幼儿")
    }else if (age in 4.0..12.2){
        println("少儿")
    }else{
        println("未知")
    }


    /**
     * in 后面还可以接 list set 都可以
     */
    if (age !in 0.0..3.3){
        println("婴幼儿")
    }




}

2.when表达式


    val school = "小s学"
    val level = when (school) {
        "学前班" -> "幼儿"
        "小学" -> "少年"
        "中学" -> "青年"
        "高中" -> "学生"
        else -> {
            println("未知")
        }
    }
    println(level)

3.String模板

Kotlin基本语法1到函数,Kotlin,kotlin,java,前端

4.函数

Kotlin基本语法1到函数,Kotlin,kotlin,java,前端

fun main() {

    println(doSomething(1, true))


}

private fun doSomething(age:Int,flag:Boolean):String{

    return "result $age $flag"
}

Kotlin基本语法1到函数,Kotlin,kotlin,java,前端

5.Unit函数

Kotlin基本语法1到函数,Kotlin,kotlin,java,前端

7.Nothing类型

Kotlin基本语法1到函数,Kotlin,kotlin,java,前端

fun main() {

    println(doSomething(1, true))
    TODO("nothing")
    println("after nothing")



}

private fun doSomething(age:Int,flag:Boolean):String{

    return "result $age $flag"
}

Kotlin基本语法1到函数,Kotlin,kotlin,java,前端

8.反引号的函数命名

Kotlin基本语法1到函数,Kotlin,kotlin,java,前端

public class MyJava {
    public static void  is (){
        System.out.println("is invoked");
    }
    public  void  saa (){
        System.out.println("is invoked");
    }
}

 Kotlin 调用Java

fun main() {

    MyJava.`is`()
    MyJava().saa()
}
fun `**~special function with weird name~**`(){

}

9.匿名函数

Kotlin基本语法1到函数,Kotlin,kotlin,java,前端

fun main() {
    val total = "Mississippi".count()
    val total1 = "Mississippi".count { letter -> letter == 's' }
    println(total)
    println(total1)
}

Kotlin基本语法1到函数,Kotlin,kotlin,java,前端

10.函数参数

 

Kotlin基本语法1到函数,Kotlin,kotlin,java,前端 Kotlin基本语法1到函数,Kotlin,kotlin,java,前端

fun main() {

//    val blessingFunction:()->String={
//        "我很牛逼"
//    }
//
//    println(blessingFunction())



    val blessingFunction ={ name:String,year:Int ->
        val holiday = "New Year ."
        "$name, Happy $holiday $year"
    }

    println(blessingFunction("jack",3))
}

11.什么是lambda

Kotlin基本语法1到函数,Kotlin,kotlin,java,前端

12.定义参数是函数的函数

fun main() {

  val getDiscountWords ={goodsName:String,hours:Int ->
        val  currentYear =2027
      "${currentYear}年,双十一${goodsName}促销倒计时:$hours 小时"

  }

showOnBoard("卫生纸",getDiscountWords)


}


//具名函数
fun showOnBoard(goodsName:String,getDiscountWords:(String,Int) ->String){
    val hours:Int = (1..24).shuffled().last()
    println(getDiscountWords(goodsName,hours))
}

Kotlin基本语法1到函数,Kotlin,kotlin,java,前端

13.简略写法

Kotlin基本语法1到函数,Kotlin,kotlin,java,前端

fun main() {

  

showOnBoard1("卫生纸"){goodsName:String,hours:Int ->
    val  currentYear =2027
    "${currentYear}年,双十一${goodsName}促销倒计时:$hours 小时"

}
}


//具名函数
fun showOnBoard1(goodsName:String,getDiscountWords:(String,Int) ->String){
    val hours:Int = (1..24).shuffled().last()
    println(getDiscountWords(goodsName,hours))
}

 14.函数内联 inline 关键字

Kotlin基本语法1到函数,Kotlin,kotlin,java,前端

fun main() {


showOnBoard1("卫生纸"){goodsName:String,hours:Int ->
    val  currentYear =2027
    "${currentYear}年,双十一${goodsName}促销倒计时:$hours 小时"
}



}


//具名函数
inline fun showOnBoard1(goodsName:String,getDiscountWords:(String,Int) ->String){
    val hours:Int = (1..24).shuffled().last()
    println(getDiscountWords(goodsName,hours))
}

15.函数引用

Kotlin基本语法1到函数,Kotlin,kotlin,java,前端

fun main() {


showOnBoard2("牙膏",::getDiscountWords)


}

fun getDiscountWords(goodsName: String,hours:Int):String{
    val  currentYear =2027
    return "${currentYear}年,双十一${goodsName}促销倒计时:$hours 小时"
}

//具名函数
fun showOnBoard2(goodsName:String,getDiscountWords:(String,Int) ->String){
    val hours:Int = (1..24).shuffled().last()
    println(getDiscountWords(goodsName,hours))
}

 16.函数类型作为返回类型

Kotlin基本语法1到函数,Kotlin,kotlin,java,前端

fun main() {


    val configDiscountWords = configDiscountWords()
    println(configDiscountWords("Jack"))


}


fun configDiscountWords():(String)->String{

    return {goodsName:String ->
        val  currentYear =2027
        val hours:Int = (1..24).shuffled().last()
         "${currentYear}年,双十一${goodsName}促销倒计时:$hours 小时"

    }
}

 17.闭包

Kotlin基本语法1到函数,Kotlin,kotlin,java,前端

18.Lambda匿名内部类

Kotlin基本语法1到函数,Kotlin,kotlin,java,前端

都是一种思想,lamdba表达式可以被当作函数参数和返回值传递嘛 在kotlin里文章来源地址https://www.toymoban.com/news/detail-828554.html

到了这里,关于Kotlin基本语法1到函数的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Kotlin】Kotlin 与 Java 互操作 ② ( @JvmField 注解字段给 Java | @JvmOverloads 注解修饰函数 | @JvmStatic 注解声明静态成员 )

    在 Java 中是 不能直接访问 Kotlin 中的字段 的 , 必须 调用相应的 Getter 和 Setter 方法 , 才能进行访问 ; 代码示例 : Kotlin 类 : 在 Kotlin 中声明的成员属性 , 默认就是 private 私有属性 , 默认为其生成了 Getter 和 Setter 方法 ; Java 类直接调用 : 在 Java 类中 , 不能直接调用 Kotlin 字段 ; 在

    2024年02月02日
    浏览(27)
  • Android kotlin高阶函数与Java lambda表达式介绍与实战

            目前在Java JDK版本的不断升高,新的表达式已开始出现,但是在Android混淆开发中,kotlin的语言与Java的语言是紧密贴合的。所以Java lambda表达式在kotlin中以新的身份出现:高阶函数与lambda表达式特别类似。接下来我讲会先讲Java的lambda,再介绍kotlin的高阶函数。 2.1

    2024年02月15日
    浏览(33)
  • Kotlin语法

     整理关键语法列表如下: https://developer.android.com/kotlin/interop?hl=zh-cn 官方指导链接 语法形式 说明 println(\\\"count ${count+num}\\\") 字符串里取值运算 val count = 2 var sum = 0  类型自动推导 val  定义只读变量,优先 var定义可变变量,可修改 val stradd = str1 + str2 字符串相加 println(\\\"Say \\\"hello

    2024年02月13日
    浏览(22)
  • Kotlin基础语法

    名称 释义 String 字符串 char 字符 Boolean 布尔型 Int 整型 Float 单精度浮点型 Double 双精度浮点型 List 集合 Set 无重复元素集合 Map 键值对集合 可读可写变量 可读变量 根据定义变量时进行初始化,系统可以根据初始化值自动进行类型推导,进而可以省略类型声明 函数定义 在Kotl

    2024年02月03日
    浏览(29)
  • Kotlin的Lambda闭包语法

    Lambda 表达式是一种在现代编程语言中常见的特性,它可以用来创建匿名函数或代码块,使得将函数作为参数传递、简化代码以及实现函数式编程范式变得更加便捷。Lambda 表达式在函数式编程语言中得到广泛应用,也在诸如 Java 8 和 Kotlin 等主流编程语言中引入。 在 Java 中,

    2024年02月11日
    浏览(42)
  • Kotlin语法入门-自定义注解(7)

    示例: 注解的附加属性可以通过用元注解标注注解类来指定: @Target 指定可以用该注解标注的元素的可能的类型(类、函数、属性与表达式); @Retention 指定该注解是否存储在编译后的 class 文件中,以及它在运行时能否通过反射可见 (默认都是 true); @Repeatable 允许在单个

    2024年04月25日
    浏览(20)
  • kotlin语法进阶 - 协程(一)协程基础

    协程并不是一个新的概念,而是一个非常老的概念,很多语言都支持协程,建议去浏览器去了解一下协程的历史和基本概念,这里我们只讲一下kotlin中的协程的作用。 从代码实现角度来看:kotlin协程底层是用线程实现的,是一个封装完善供开发者使用的线程框架。kotlin的一个

    2024年02月09日
    浏览(35)
  • 【Jetpack】DataBinding 架构组件 ② ( 字符串拼接函数 | 绑定点击事件函数 | DataBinding 布局中使用 import 标签导入 Java、Kotlin 类 )

    在上一篇博客中 , 遇到 在 DataBinding 布局 中 , 向 TextView 组件设置 int 类型数据的情况会报错 , 最终的处理方式是 将 int 类型的变量 student.age 通过 String.valueOf 函数转为 字符串 类型 , 设置到 TextView 组件中 ; 此外 , 还可以 在 数据类 中定义 字符串拼接函数 , 直接在 DataBinding 布局

    2023年04月08日
    浏览(75)
  • 【28】Kotlin语法进阶——使用协程编写高效的并发程序

    提示:此文章仅作为本人记录日常学习使用,若有存在错误或者不严谨得地方欢迎指正。 协程是Kotlin语言中很有代表性的一种并发设计模式,用于简化异步执行的代码。 协程和线程有点类似,可以简单地将它理解成一种轻量级的线程 。我们前面学习的线程是属于重量级的,

    2024年02月03日
    浏览(38)
  • Kotlin学习 - 高阶函数和内联函数

    高阶函数定义 如果一个函数接收另一个函数作为参数,或者返回值的类型是另一个函数,那么该函数就称为高阶函数。 以前开发的时候,入参或返回值都是基本类型或者对象,但是在Kotlin中出现了一个新的类型:函数类型。就是函数也可以像 String 这种类型一样做入参或者返

    2024年02月12日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包