kotlin 函数(一)

xiaoxiao2021-02-28  108

/** * Created by Administrator on 2017/6/3. */ fun hello():String = "hello world" fun hello(name :String , location : String):String = "hello to you $name at $location" fun print1(str:String) :Unit{//函数返回空值 println(str) } fun print2(str:String){ println(str) } //函数只有一个表达式 可以用= 不需要return关键字 fun square(k:Int) = k*k fun square2(k: Int): Int = k*k //函数嵌套函数 fun printArea(width: Int, height: Int): Unit{ fun calcuateArea(width: Int, height: Int): Int = width * height val area = calcuateArea(width,height) println("the area is $area") } fun printArea2(width: Int, height: Int): Unit{ fun calcuateArea(): Int = width*height; val area = calcuateArea() println("the area is $area") } fun fizzbuzz(start: Int, end: Int):Unit{ for(k in start .. end){ if( k % 3 == 0 && k % 5 == 0) println("Fizz Buzz") else if(k % 3 == 0) println("fizz") else if(k % 5 == 0) println("buzz") else println(k) } } fun fizzbuzz2(start: Int, end: Int): Unit{ fun isFizz(k:Int):Boolean = k%3 == 0 fun isBuzz(k:Int): Boolean = k%5 == 0 for(k in start..end){ if(isFizz(k) && isBuzz(k)) println("fizz buzz") else if(isFizz(k)) println("fizz") else if(isBuzz(k)) println("buzz") else println(k) } } fun fizzbuzz3(start: Int, end: Int): Unit{ for(k in start..end){ fun isFizz():Boolean = k%3 == 0 fun isBuzz(): Boolean = k%5 == 0 if(isFizz() && isBuzz()) println("fizz buzz") else if(isFizz()) println("fizz") else if(isBuzz()) println("buzz") else println(k) } } fun fizzbuzz4(start: Int, end: Int): Unit{ for(k in start..end){ fun isFizz(): Boolean = k % 3 == 0 fun isBuzz(): Boolean = k % 5 == 0 when{ isFizz() && isBuzz() -> println("fizz buzz") isFizz() -> println("fizz") isBuzz() -> println("buzz") else -> println(k) } } } //给参数限定不变的条件 fun foo(k: Int){ require(k > 10, {"k should be greater than 10"}) } //命名参数 位置可以随意调换 命名参数 只可以用在kotlin函数 不能用在java的函数 fun namedParams(){ val string = "adda" string.endsWith(suffix = "ranvas",ignoreCase = true) string.endsWith(ignoreCase = true,suffix = "ranvas") }
转载请注明原文地址: https://www.6miu.com/read-24883.html

最新回复(0)