Kotlin学习探索-3

2018-11-03  本文已影响70人  骑小猪看流星
前言:

本篇文章是《Kotlin学习探索》系列的第三篇,上一篇文章主要学习了:Kotlin函数的定义与常见书写格式、变量定义、NULL检查机制、类型检测及自动类型转换、以及Kotlin的区间表达式。本篇文章主要学习的知识点有:Kotlin的基本数值类型、比较两个数字(三个等号和二个等号的区别)、Kotlin的数值类型转换、数组以及字符串模板的使用。

Kotlin的基本数值类型

Kotlin 的基本数值类型包括 Byte、Short、Int、Long、Float、Double、Boolean等(注意:这里是大写)。不同于Java的是,字符串是一个独立的数据类型。另外,Kotlin这门语言没有基础数据类型,只有封装的数值类型,我们定义的一个变量, Kotlin内部其实帮忙封装成了对象,这样就可以规避开发过程中出现空指针的问题。

    //布尔类型
    var b =  true
    var b1 : Boolean = false

    // 浮点类型 Double:64位 Float:32位
    var f = 2.3f
    var d = 1.2
    var f1 : Float = 2.3f
    var d1 : Double = 1.2

    // 整数类型 Long:64位 Int:32位
    var i = 20
    var l = 333333333
    var i1 : Int = 20
    var l1 : Long = 333333333

Kotlin比较两个数字

Kotlin比较两个数字的规则:三个等号 === 表示 比较对象地址是否相等、两个 == 表示 比较两个值大小是否相等

    //声明变量a 整型 值为233
    val a: Int = 233

    //经过了装箱,创建了两个不同的对象
    val boxA: Int? = a
    val boxB: Int? = a

    //false,虽然值相等,但是对象在内存中的地址不一样,因此为false
    println(boxA === boxB)
    
    // true,值相等
    println(boxA == boxB) 

Kotlin的数值类型转换

在Kotlin中,较小的数值类型不能隐式转换为较大的数值类型。 这意味着在不进行显式转换的情况下,不能把 Byte 型的值赋给一个 Int 类型的变量。Kotlin的数据类型都有下面的一些方法,可以将其转化为其它的数值类型

toByte(): Byte
toShort(): Short
toInt(): Int
toLong(): Long
toFloat(): Float
toDouble(): Double
toChar(): Char
Kotlin的数组

Kotlin的数组用类 Array 实现, size 属性及 get 和 set 方法一目了然就是获取数组的长度、获取对应的角标值或者设置对应的角标值,使用大括号将数据包起来:

//  创建数组  使用函数arrayOf()
    val a = arrayOf(1, 2, 3, 4, 5)
//  获取数组对应的角标属性值
    println(a[0])    // 输出结果:1
    println(a[1])    // 输出结果:2

//  将数组的第一个角标设置属性值为2
    a.set(0,2)

//  获取数组的长度
    a.size

Kotlin的字符串模板

什么叫字符串模板,字符串模板简单理解就是:字符串可以包含模板表达式 ,即一些小段代码。最后会求逻辑的值,并把结果合并到字符串中。 Kotlin的字符串模板表达式以美元符($)开头,由一个简单的名字构成:

    val i = "我爱你中国"
    val s = "i = $i" 
    // 最终结果为: "i = 我爱你中国"
    println(s)
总结:

本篇文章主要学习了:Kotlin的基本数值类型、比较两个数字(三个等号和二个等号的区别)、Kotlin的数值类型转换、数组以及字符串模板的使用。

如果这篇文章对您有开发or学习上的些许帮助,希望各位看官留下宝贵的star,谢谢。

Ps:著作权归作者所有,转载请注明作者, 商业转载请联系作者获得授权,非商业转载请注明出处(开头或结尾请添加转载出处,添加原文url地址),文章请勿滥用,也希望大家尊重笔者的劳动成果

上一篇 下一篇

猜你喜欢

热点阅读