Kotlin笔记2--变量和函数

36 篇文章 2 订阅

变量

val (value 的简写)关键字用来声明一个不可变的变量,初始化赋值后不可重新赋值,对应 Java 中的 final 变量 。

var (variable 的简写)关键字用来声明一个可变的变量,初始化赋值后还可以重新赋值,对应 Java 中的非 final 变量。

写个简单的定义变量然后赋值的 demo , 再做个简单运算和打印

package com.cosmos.helloworld

fun main(){
    var a = 10
    var sa= "str_a"

    var b : Int
    b = a * 10

    var c : Int = 20
    
    println("a = " + a)
    println("sa= " + sa)
    println("b = " + b)
    println("c = $c")
}

运行结果,

a = 10
sa = str_a
b = 100
c = 20

留意下,
println("c = $c") ,Kotlin 打印变量可以用这种方式;
(一开始这样写是因为AS提示的,后面知道了,这个叫做字符串内嵌表达式

println("b = " + b) 的方式,AS 会标黄,按照提示修改就是 println("b = $b") 效果。

类型推导机制

Kotlin 有个类型推导机制,会自动推导变量的类型。

var a = 10 ,将整型10 赋值给变量 a ,a 就是整型;
var sa= "str_a" ,将字符型 str_a 赋值给变量 sa,sa 就是字符型;

这种是 直接赋值,即定义变量的时候就给它赋值。

还有延迟赋值,这种情况一般都要显示声明变量类型。
var b : Int ,声明 b 为 Int 型。

Kotlin 与 Java 的基本数据类型对比,

Java 数据类型Kotlin 数据类型
intInt
longLong
shortShort
floatFloat
doubleDouble
booleanBoolean
charChar
byteByte

函数

函数也叫方法,和 Java 里的函数是一个意思。

Kotlin 的函数都是用 fun 关键字来定义的,函数名自取,当然,函数名要起得有意义,能表达出它的功能。

函数定义的规则:

fun nethoodName (param1 : Int , param2 : Int) : Int {
	return 0
}

方法名自取。参数要显示声明类型,返回值也要声明,格式就是 : <返回值类型>

示例代码,

package com.cosmos.helloworld

import kotlin.math.max

fun main(){
    var a = 10
    var b = 15
    var big = getBiggerNum(a,b)
    println("big = $big")
}

fun getBiggerNum(num1 : Int, num2: Int) : Int {
    return max(num1,num2)
}

运行结果,

big = 15

留意下,这里调用了 Kotlin 的 max() 方法。

继续,学习下 Kotlin 的语法糖。

当一个函数只有一行代码时,不必编写函数体,可以直接将唯一的一行代码写在函数末尾,用等号连接。

于是有,

fun getBiggerNum(num1 : Int, num2: Int) : Int  = max(num1,num2)

return 关键字也省略了,因为等号(=)已经表达出返回值的含义了。

基于 Kotlin 优秀的类型推导机制, max() 方法函数的返回值是 Int 型,这样,就不用再显示声明函数的返回值了,

fun getBiggerNum(num1 : Int, num2: Int) = max(num1,num2)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值