zoukankan      html  css  js  c++  java
  • Kotlin学习(2)函数

     函数声明:

    fun plus(a:Int,b:String):Boolean{   //fun 函数名(参数名:参数类型,参数名:参数类型):返回值类型
            println(a)
            return true    //返回值
    }

    集合:

      Kotlin可以使用Java声明集合的方法,也有自己的声明方式。

    //Java方式
    val a=ArrayList<Int>()
    
    //Kotlin方式
    val b=arrayListOf<Int>()

     


    顶层函数和属性:

      Kotlin中没有static修饰符。

      为了消除静态工具类,Kotlin可以将函数或者属性写在 .kt 文件中,类的外面。

      类似于C语言中全局变量,如果是public属性(省略的话默认public),其他类可以直接使用这个变量(函数),不必声明。


    扩展函数和属性:

      Kotlin支持在原有类的外面扩展自己想要的方法,比如我想给String对象添加一个可以获得最后一个字母的方法,不需要再去写一个类继承String,然后添加方法。

    fun main(args: Array<String>) {
    	println("Kotlin".lastChar())
    }
    
    //扩展函数 fun String.lastChar():Char{ return this.get(this.length-1) }

    //扩展属性
    fun String.lastChar:Char
             get()=get(length-1)

      为了防止偶然的命名冲突,使用扩展函数需要导入扩展函数。

      Kotlin中import可以导入一个类,也可以导入一个函数,比如扩展函数是Strings包中的顶层函数,可以 import Strings.lastChar ,当然也可以使用 * 来导入包中所有内容。

      扩展函数必须是顶层函数。不能写在类内部。

      扩展函数的静态属性决定了扩展函数不能被子类重写。


    可变参数:

    fun main(args: Array<String>) {
        bb(1,2,3,4,5)
    }
    
    fun bb(vararg a:Int){
        for (i in a){
            println(i)
        }
    }

     局部函数:

      Kotlin允许在函数内声明局部函数,用以避免大量的重复操作。

  • 相关阅读:
    day⑥:logging模块
    day⑥:shelve模块
    day⑥:xml模块
    day⑤:冒泡排序
    day⑤:模块
    day⑤:re深入
    day④:递归
    day④:迭代器
    day④:装饰器
    day③:函数式编程
  • 原文地址:https://www.cnblogs.com/liumaowu/p/9400522.html
Copyright © 2011-2022 走看看