| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 移动开发 -> Kotlin学习——基础 -> 正文阅读 |
|
[移动开发]Kotlin学习——基础 |
基本概念函数
变量val:定义只读局部变量实用关键字val定义,只能为其赋值一次
var:可重新赋值的变量使用var关键字
空值与null检测当某个变量的值可以为null的时候,必须在声明处的类型后添加 ‘?’ 来标识该引用可为空
类型检测与自动类型转换is 运算符检测一个表达式是否某类型的一个实例。如果一个不可变的局部变量或属性已经判断出为某类型,那么检测后的分支中(该方法中)可以直接当作该类型使用,无需显式转换 when表达式
使用区间(range)使用 in 运算符来检测某个数字是否在指定区间内
基本类型数字对于整数,有四种不同大小的类型,因此值的范围也不同。所有未超出Int最大值的整型值初始化的变量都会推断为Int类型。如果初始值超过了其最大值,那么推断为Long类型。如需要显式指定Long型值,需在该值后追加L后缀
对于浮点数,提供了Float和Double类型。对于以小数初始化的变量,编译器会推断为Double类型。如需将一个值显式指定为Float类型,需添加f或F后缀,如果这样的值包含多于6~7位十进制数,那么会将其舍入。 注意Kotlin中的数字没有隐式拓展转换。例如,具有Double参数的函数只能对Double值调用,而不能对Float、Int或者其它数字值调用,如果要将数值转换为不同的类型,请使用显示转换
字面常量数值常量字面值有以下几种:
注意:不支持八进制,数字字面值可以使用下划线来分割使数字常量更易读 表达方式在Java平台数字是物理存储为JVM的原生类型,除非我们需要一个可空的引用(如Int?)或范型。范型情况下会把数字装箱 注意数字装箱不一定保留同一性,另一方面,它保留了相等性
显式转换由于不同的表示方式,较小类型并不是较大类型的子类型。因此较小的类型不能隐式转换为较大的类型。这意味着在不进行显式转换的情况下我们不能把 Byte 型值赋值给一个 Int 变量。 每个数字类型支持如下的转换(显式转换):
运算位运算列表(只用于 Int 与 Long):
浮点数比较
字符 ? ? 字符用 Char 类型表示。他们不能直接当作数字,字符字面值用单引号括起来:‘1’。特殊字符可以用反斜杠转义。当需要可空引用时,像数字、字符会被装箱。装箱操作不会保留同一性 布尔 ? ? 用 Boolean 类型表示,有 true 和 false 两个值,若需要可空引用布尔会被装箱。内置的布尔运算有:
数组 ? ? 数组使用 Array 类来表示,它定义了 get 与 set 函数以及 size 属性,我们可以使用库函数 arrayOf() 来创建一个数组并传递元素值给它,例如这样 arrayOf(1,2,3)创建了 array[1,2,3];或者库函数 arrayOfNulls() 可以用于创建一个指定大小的、所有元素都为空的数组。kotlin中数组是invariant的,这意味着我们不能把 Array<String> 赋值给 Array<Any>
Kotlin 中也有无装箱开箱的专门类来表示原生类型数组:ByteArray、ShortArray等,这些类与Array并没有继承关系,但是它们有同样的方法属性集 无符号整型 ? Kotlin为无符号整数引入了以下类型
无符号类型支持其对应有符号类型的大多数操作 与原生类型相同,每个无符号类型都有相应的为该类型特化的表示数组的类型,例如konlin.UByteArray、kotlin.UShortArray 为了使无符号整型更易于使用,Kotlin提供了用后缀标记整型字面值来表示指定无符号类型(类似于Float/Long),后缀u或U将字面值标记为无符号,确切类型会根据预期类型确定,如果没有提供预期的类型,会根据字面值大小选择 UInt 或 ULong 字符i串 用String类型表示,字符串是不可变的;字符串的元素——字符可以使用索引运算符访问:s[i]。
字符串模板:字符串字面值可以包含模版表达式,即一些小段代码,会求值并把结果合并到字符串中。模版表达式以美元符($)开头 Break和Continue标签 在Kotlin中任何表达式都可以用标签(label)来标记。标签的格式为标识符后跟@符号,例如:abc@、fooBar@都是有效的标签。要为一个表达式加标签,我们只要在其前加标签即可
标签限制的break跳转到刚好位于该标签指定的循环后面的执行点。continue继续标签指定的循环的下一次迭代 |
|
移动开发 最新文章 |
Vue3装载axios和element-ui |
android adb cmd |
【xcode】Xcode常用快捷键与技巧 |
Android开发中的线程池使用 |
Java 和 Android 的 Base64 |
Android 测试文字编码格式 |
微信小程序支付 |
安卓权限记录 |
知乎之自动养号 |
【Android Jetpack】DataStore |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 10:59:58- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |