写点什么

Kotlin- 基础 --- 数据类型,android 项目开发实战入门光盘文件

用户头像
Android架构
关注
发布于: 7 小时前


var aLong: Long = 123Lvar aInt: Int = 1234567890var aShort: Short = 12345


var aFloat: Float = 23Fvar aDouble: Double = 23.0


var aByte: Byte = 127


基本类型的装箱与拆箱 Kotlin 不再区分装箱与非装箱类型,在需要的时候编译器会帮我们自动的选择是使用基本类型还是装箱类型。

三、Chat 类型

var aChar: Char = '中'var nChar: Char = '\n'var bChar: Char = '国'


Chat 类型表示一个字符,一个字符可以是一个字,或者一个符号等等。字符占两个字节,表示一个 16 位的 Unicode 字符。字符使用单引号?''?引起来,例如?'中''A''\n'


四、数值类型的显式转换

在 Java 里面,将一个 int 值赋给 long 值,是可以允许的,因为 Int 的范围比 long 要小,所以 long 可以兼容 int。但是,在 Kotlin 中这样的隐式转换是不被支持的


var aInt: Int = 10var aLong: Long = 10000


// 编译器会报错 aLong = aInt


// 必须调用 toXXX 方法显示转换 aLong = aInt.toLong()


每个数值类型都支持下面的转换



    《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》
    浏览器打开:qq.cn.hn/FTe 免费领取
    复制代码


    toLong:Long


    • toInt:Int

    • toShort:Short

    • toFloat:Float

    • toDouble:Double

    • toByte:Byte

    • toChar: Char

    • toString: String

    五、字符串类型

    字符串本质上可以说是"一串" Char,字符串使用双引号?""?引起来

    5.1 字符串的比较

    var aName: String = "fancyluo"var bName: String = "fancyluo"


    println(aName == bName) // trueprintln(aName === bName)// false


    熟悉 Java 的同学对以上结果是不是就困惑了,怎么?==?打印出来了 true,这里我们可以看看==的源码就可以解开疑惑了。


    public open operator fun equals(other: Any?): Boolean


    Kotlin 的?==?就相当于 Java 的?equeals,表示比较内容。Kotlin 的?===?就相当于 Java 的?==,表示比较对象是否相同。

    5.2 字符串模板

    在 Kotlin 中,字符串可以包含模板表达式,模板表达式由?$?开头,如果需要进行表达式运算,可以写在?{}?里面


    var a: Int = 1var b: Int = 2


    // Javaprintln("" + a + " + " + b + " = " + (a + b))


    // 字符串模板 println("b = ${a + b}")


    // print: 1 + 2 = 3


    // 原始字符串 var rawString = """ab${a + b}"""

    六、数组

    Kotlin 中的数组由?Array?类表示,表示以一系列的对象,可以使用函数?arrayOf?来创建数组,示例如下


    val arrayOfString: Array<String> = arrayOf("fancy", "luo")val arrayOfUser: Array<UserInfo> = arrayOf(UserInfo("fancyluo", "音乐"),UserInfo("jack", "篮球"))

    用户头像

    Android架构

    关注

    还未添加个人签名 2021.10.31 加入

    还未添加个人简介

    评论

    发布
    暂无评论
    Kotlin-基础---数据类型,android项目开发实战入门光盘文件