Kotlin中函数 3种表达形式: 一般函数: 1 2 3 fun sum(a: Int, b: Int): Int { returna+b } 简化函数为表达式形式: fun sum2(a: Int, b: Int): Int = a + b//函数表达式fun max(a: Int, b: Int): Int =if(a > b) aelseb//lambda函数fun isOdd(x: Int) = x % 2 != 0 带默...
一、if/else if 表达式 在Java中if...else是语句,而在kotlin中if..else是表达式,是有结果的 例如: 二、range表达式 用in关键字判断值是否在某个范围内,in A..B,左右两边都是闭区间[A,B] 例如: if(age !in 0..3){ //age不在0到3之中 } 三、when表达式 类似于java中的switch..case kotlin中只要...
一、range 范围表达式 二、when 条件表达式 三、字符串模板 一、range 范围表达式 使用in关键字 , 可以检查 指定的值 是否在 某个区间范围内 ; 代码示例 : 代码语言:javascript 复制 funmain(){val number=3val flag=numberin0..4println(flag)} 执行结果 : 使用!in, 可以检查 指定的值 是否不在 某个区...
Lambda 表达式的最后一行为返回值,下面这个 Lambda 表达式的意思就是接受一个整型参数,并且返回一个字符串 "Helll"。 valf1={ p: Int -> println(p)"Hello"} 4.4、Lambda 表达式的参数省略形式 val f1: Function1<Int, Unit> = { p -> println(p) } 如果 Lambda 表达式只有一个参数的话,可以省略参数,...
分支表达式 Kotlin中没有三元条件符(a > b ? a : b),但它的条件分支都是表达式,可以直接放在赋值符的右边,或者用在return语句中。 if表达式 它是一个两个分支的表达式,是有返回值的: val maxV = if (a > b) a else b 当然了,把它当作常规的语句来使用也是没有问题的: ...
四,Kotlin-表达式 1,常量与变量(val,val) 只读变量 使用val表示 类似Java中final 不可重复进行赋值,只能被赋值一次 可分为运行时常量和编译器常量 运行时常量:编译器在编译时并不能确切的知道它的值是什么;编译器在引用到该常量时使用的是 编译器常量:编译器在编译时已经知道该常量的值,并且在引用到改常量的...
Kotlin 用对象表达式和对象声明来实现创建一个对某个类做了轻微改动的类的对象,且不需要去声明一个新的子类。 对象表达式 通过对象表达式实现一个匿名内部类的对象用于方法的参数中: window.addMouseListener(object:MouseAdapter(){overridefun mouseClicked(e:MouseEvent){// ...}overridefun mouseEntered(e:MouseEv...
kotlin:四大函数表达式 1.Apply(使用this代表当前对象,返回值是当前对象) * 1.任意对象 任意类型都有apply扩展函数 * 2.apply函数参数是函数类型 带接受者(T)的函数字面值 * 3.apply函数返回值是当前对象本身 源码如下 publicinlinefun<T>T.apply(block:T.()->Unit):T{contract{callsInPlace(block,Invocation...
表达式 代替了三目运算符 kotlin的位运算符与java的位运算符也略有区别,有一点要说明,kotlin的运算符都是以方 法形式来实现,都有特定的符号和固定的优先级。 1.1单目前缀运算符 单目前缀运算符有+,-,!这三个。 +a a.unaryPlus() -a a.unaryMinus() ...
并且我们还可以将表达式作为函数体、返回值类型⾃动推断的函数,如: fun sum(a: Int, b: Int) = a + b; 1. 2.变量(val&var) 变量分三种,局部变量,顶层变量和可变变量 但是就两个修饰符val 和 var //定义Int类型的变量 val a: Int = 1 ...