目录
1.Kotlin 语言的编译时常量
2.查看 Kotlin 反编译后的字节码
?3.Kotlin语言的引用类型学习
4.?Kotlin语言的range表达式
1.Kotlin 语言的编译时常量
编译时常量只能在函数之外定义,才可以在编译期间初始化。
// TODO 10.Kotlin 语言的编译时常量
// 编译时常量只能是常用的基本数据类型:(String,Double,Int,Float,Long,Short,Byte,Char,Boolean)
//编译时常量只能定义在函数之外,为什么?
// 答:如果在函数内定义就只能在运行时才能调用函数赋值,就不是编译时常量一说了。
// 结论:编译时常量只能在函数之外定义,才可以在编译期间初始化。
const val PI = 3.1415 //定义编译时常量
fun main() {
val info = "bxb is OK" //这个为只读类型的变量
//提示:修饰符const不适用于局部变量
//const val PI = 33
}
2.查看 Kotlin 反编译后的字节码
首先编写代码,之后点击如下按钮
之后会显示
?之后点击
?显示
?3.Kotlin语言的引用类型学习
Kotlin 语言只有一种数据类型
????????引用数据类型(因为它们都是类,可以点进去的类)
????????看起来都是引用数据类型,实际上编译器会在Java字节码中,修改成"基本数据类型"
// TODO 12. Kotlin语言的引用类型学习
// Java 语言有两种数据类型
// 基本数据类型:int double
// 引用数据类型:String
//Kotlin 语言只有一种数据类型
// 引用数据类型(因为它们都是类,可以点进去的类)
// 看起来都是引用数据类型,实际上编译器会在Java字节码中,修改成"基本数据类型"
fun main() {
val name : String = "bxb"
val pi : Float = 3.14159f
val pi2 : Double = 3.14
val isBoolean : Boolean = true
}
4.?Kotlin语言的range表达式
range表达式表示范围,中间使用 ".."?来分割,包含边界。
// TODO 13. Kotlin语言的range表达式
fun main() {
var number = 98
//range 范围 从哪里到哪里
// .. 包含边界
if(number in 0..59){
println("不及格")
} else if (number in 60..69){
println("及格")
} else if (number in 70..79){
println("良好")
} else if (number in 80..100){
println("优秀")
} else if (number !in 0..100){
println("分数无效")
}
}
|