品牌产品网站怎么做,怎么做网站营销策划,下列软件中属于网页制作工具,php网站管理Kotlin的基本数据类型 Kotlin 的基本数值类型包括 Byte、Short、Int、Long、Float、Double 等。不同于 Java 的是#xff0c;字符不属于数值类型#xff0c;是一个独立的数据类型。
Java和kotlin数据类型对照如下#xff1a; Java基本数据类型 Kotlin对象数据类型 数据类…Kotlin的基本数据类型 Kotlin 的基本数值类型包括 Byte、Short、Int、Long、Float、Double 等。不同于 Java 的是字符不属于数值类型是一个独立的数据类型。
Java和kotlin数据类型对照如下 Java基本数据类型 Kotlin对象数据类型 数据类型说明 int Int 整型 long Long 长整形 short Short 短整型 float Float 单精度浮点型 double Double 双精度浮点型 boolean Boolean 布尔型 char Char 字符型 byte Byte 字节型
从表中不难看出相同的数据类型Kotlin的首字母都是大写而Java的首字母都是小写这一个小小的差别表示Kotlin完全抛弃了Java中的基本数据类型全部使用了对象数据类型。比如在Java中int是关键字Kotlin中Int则变成了一个类有自己的方法和继承结构。可以这样理解Kotlin 中没有基础数据类型只有封装的数据类型每定义的一个变量其实是Kotlin 封装了一个对象这样可以保证使用不会出现空指针。数据类型也是一样所以在比较两个数字的时候就有比较数据大小和比较两个对象是否相同的区别了。
在Kotlin中三个等号 表示比较对象地址两个 表示判断两个数值是否相等。
如下述例子
val a: Int 10000
println(a a) // true值相等对象地址相等//这里经过了装箱操作创建了两个不同的对象
val showNumA: Int? a
val showNumB: Int? a//虽然经过了装箱操作但是值是相等的都是100
println(showNumA showNumB) // false值相等对象地址不一样
println(showNumA showNumB) // true值相等
运行后对应控制台输出结果为
这里值得注意一点如果你要拿这段代码去运行验证要注意a变量赋值的大小规则跟 Java 中是一样的在范围是 [-128, 127] 之间并不会创建新的对象输出的结果都是 true从 128 开始输出的结果才为 false。
类型转换
在kotlin中较小数据类型并不是较大数据类型的子类型较小的数据类型不能隐式转换为较大的数据类型。 比如在不进行显式转换的情况下我们不能把 Int 型值赋给一个 Long 变量。但我们可以使用其toLong()方法。
val b: Int 1
val i: Long b.toLong()
如此便达成了数据类型转换的目的当然kotlin中每种数据类型都有这种转化成其他类型的方法
toByte(): Byte
toShort(): Short
toInt(): Int
toLong(): Long
toFloat(): Float
toDouble(): Double
toChar(): Char
kotlin在某些场景下也可以使用自动类型转化但前提是相应逻辑可以根据上下文环境推断出正确数据类型并且操作符能做相应的重载操作。如
val longNum 1 1L // Int类型Long类型Long类型
位操作
与Java类似对于Int和Long类型还有一系列位操作符可使用如下
shl(bits) – 左移位 (Java’s )
shr(bits) – 右移位 (Java’s )
ushr(bits) – 无符号右移位 (Java’s )
and(bits) – 与
or(bits) – 或
xor(bits) – 异或
inv() – 反向
使用场景较少这里不做赘述。
字符
Kotlin和Java不一样Char 不能直接和数字操作。Char 必需是单引号 包含起来的。比如普通字符 0a。 字符字面值用单引号括起来表示 而特殊字符可以用反斜杠转义。转义序列如下\t、 \b、\n、\r、\、\、\\ 和 \$。
字符串
和 Java 一样String 不可变。同时Kotlin 支持三个引号 扩起来的字符串支持多行字符串。例如
fun main(){val text
1234567
七六五四三二一
示例
println(text)
}对应控制台输出为 String对象可以通过 trimMargin() 方法来删除多余的空白我们可以修改刚刚的代码来进行验证
fun main(){val text
|1234567
|七六五四三二一
|示例
.trimMargin()println(text)
}
对应输出控制台结果为
如果你细心点会发现我在转行的字符串前都加上了这是因为trimMargin()中默认 | 用作边界前缀但你也可以选择其他字符并作为参数传入比如 trimMargin()。此方法对应源码如下
数组 kotlin中数组用类 Array 来实现跟Java类似常用的 size 属性及 get 和 set 方法使用方法一致包括通过下标来获取或者设置数组对应位置的值。
与之对应数组有两种创建方式
使用函数arrayOf()使用工厂函数。
val arrayOne arrayOf(1, 2, 3) //[1,2,3]
val arrayTwo Array(3, { i - (i * 2) }) //[0,2,4]//读取数组
println(arrayOne[0])
println(arrayTwo[1])
对应输出为 除了类Array还有ByteArray, ShortArray, IntArray用来表示各个类型的数组用法同Array。
字符串模板
在kotlin中字符串可以包含一些小段代码即模板表达式来进行求值并把结果合并到字符串中。此处模板表达式以美元符$开头由变量名共同构成
fun main(){val num 111val va num $num println(va) // 打印结果为 num 111
}
或者用花括号扩起来表示的任意表达式
fun main(){val str kotlinval strShow $str.length is ${str.length}println(strShow) // 打印结果为 kotlin.length is 6
}
但同时如果你需要使用$字符的话你可以使用下列方法
fun main(){。val str
这个符号 ${$} 是美元符号
println(str)
}
对应控制台输出结果为