一、Kotlin学习之函数和变量

2020-03-21  本文已影响0人  家有萌犬

一、函数

fun max(a: Int, b: Int): Int {
    return if (a > b) a else b
}

println(max(1, 2))打印结果是2

函数

备注:if语句在java和kotlin有区别,在kotlin中,if语句是一个表达式,有返回值的。

表达式函数体

可以让函数变得简单,因为他的函数体是个表达式,可以省略return和花括号。

fun max(a: Int, b: Int) = if (a > b) a else b

对表达式函数体来说,编译器会分析函数体的表达式,并且把他的类型作为函数的返回类型,即使没有显示的写出来,这种分析通常被称为类型推到

二、变量

在java中声明变量的时候会以类型开始。在Kotlin中这样是行不通的,因为kotlin中许多变量声明类型都可以省略。所以在Kotlin中变量的声明是以var/val关键字开始的,然后跟变量名称,最后再加上类型(类型可以省略)

var a: Int = 2//显示指出变量类型
var b = 3//省略类型,类型推导
val c = 4
//c = 5//编译会报错

如果变量没有初始化,需要显示地指出它的类型,因为编译器无法推断它的类型。

2.1 可变变量&不可变变量

备注:虽然val修饰的变量是不可变的,但是它指向的对象是可变的,这个java的final是一致的

三、字符串模板

var a: Int = 2
println("a = $a")

打印结果为“a = 2
Kotlin可以在字符串中引入局部变量,只需要在变量的前面加上字符$。如果要在字符串中打印字符$,就要进行转义。

println("hello \$")

打印结果“hello $”

上一篇下一篇

猜你喜欢

热点阅读