变量,常量和数据类型
在这周的学习中,把kotlin语法的面向对象之前的都学完了,函数啊,循环,list,map都看视频学习了,下面总结下kotlin的常量,变量和数据类型
数据类型
Kotlin 的基本数值类型包括 Byte、Short、Int、Long、Float、Double 等。不同于Java的是,字符不属于数值类型,是一个独立的数据类型。
注:在Kotlin中,字符类型不是基本数值类型,是一个独立的数据类型。
这个和java是一样的都是基于jvm静态类型语言,但是所有变量和表达式类型在编译时已确定。在Java中,通过装箱和拆箱在基本数据类型和包装类型之间相互转换,而,Kotlin中,所有变量的成员方法和属性都是对象。一些类型是Kotlin中内建,相当于创建的普通类,直接调用即可。
在Kotlin源代码中,不管是常量还是变量在声明是都必须具有类型注释或者初始化。如果在声明时,进行了初始化,会自行推导其数据类型,以为着常量或者变量注释类型。Kotlin中的数据类型包括数值类型、字符类型、布尔类型等。
上面的话告诉我们
1.所有变量的成员方法和属性都是对象,就不需要装箱了哈
2.变量和常量必须初始化或者告诉是什么类型的,如果初始化却没声明是什么类型的,它会自动判断,这个蛮方便的。
类型转化
相关的方法汇总如下:
方法名 转换类型
toByte() -> Byte
toShort() -> Short
toInt() -> Int
toLong() -> Long
toFloat() -> Float
toDouble() -> Double
toChar() -> Char
这里需要注意一点的是:与java不同,kotlin中Char类型仅仅表示字符,不能再被直接当做数字。
变量
kotlin变量的声明方式与Java中声明变量有很大的区别,而且必须使用var关键字
格式:关键字 变量名: 数据类型 = xxx
eg var a:int = 3 //这个就表示有个变量叫a,int型的,初始化为3
在kotlin中编译器支持自动类型判断,即声明时可以不指定类型,由编译器判断。
//立即初始化
var a: Int = 10
//推导出类型
var b = 5
//没有初始化的时候,必须声明类型
var c: Float
c = 12.3f //赋值
c += 1 //操作变量
val a: Int = 1
val b = 1 // 系统自动推断变量类型为Int
val c: Int // 如果不在声明时初始化则必须提供变量类型
c = 1 // 明确赋值
var x = 5 // 系统自动推断变量类型为Int
x += 1 // 变量可修改
常量
Kotlin变量的声明方式与Java中声明变量有很大的区别,而且必须使用val关键字,而在Java中是使用final关键字修饰的,而且为了区别一般都用大写字母表示常量。
格式:关键字 常量名: 数据类型 = xxx
//立即初始化
val NUM_A: Int = 100
//推导出类型
val NUM_B = 50
//没有初始化的时候,必须声明类型
val NUM_C: Int
NUM_C = 1
// c += 1 因为c是常量,所以这句代码是会报错的
注释
Kotlin中的注释几乎和Java没什么区别。唯一的区别在于Kotlin中的多行注释中可以嵌套多行注释,而Java中是不能的。
1.单行注释
两个斜杠开头表示单行注释(’ // ‘)
2.多行注释(块注释)
以斜杠加星号开头(‘ /* ’),同时以星号加斜杠结尾(‘ */ ’),中间这是要注释的代码
3.多行注释嵌套
kotlin中块注释的级联使用,其实个人觉得块注释的嵌套使用的意义不大,不过从视觉上确实能给人一种层次感,,,反正没用过
总结
这周学了下kotlin的基础语法,感觉蛮简洁的,后面会继续总结函数,循环,when的相关知识。