Kotlin一之内置类型

目录

一、基本类型

二、数组


一、基本类型

整型默认类型是Int,浮点数默认类型是double。

数值型的Float需要在数字后面写上大写的L,不可以是小写的l

Kotlin 复制代码
// val c: Long = 4l // 编译就报错,只能用大写的L
val c: Long = 4L

不支持隐式转换,可以直接用数字赋值。比如一个函数参数为Double 的函数只能接收 Double 类型,不能接收 Float、Int 或者其他数字类型。Long类型也不能接受Int类型。

Kotlin 复制代码
    val bInt = 3
    var b: Long = 3 // 可以
    b = 4
//    b = bInt // 编译就报错,不支持隐式转换
    b = bInt.toLong()
    var doubleNumber1: Double = 6.0
    // 报错 The floating-point literal does not conform to the expected type Double
//    doubleNumber1 = 3.0f // 报错,因为3.0f,相当于明确指出了是Float类型,Float类型不能给Double类型赋值

== 表示值比较,===表示引用比较,看是否是同一个对象。

Kotlin 复制代码
fun stringFunction() {
    val str = "Hello" // 常量池
    val str2 = "Hello"
    val hello = String("Hello".toCharArray()) // 创建了对象
    val hello2 = String("Hello".toCharArray())
    println("str hello value equal? ${str==hello}") // 比较值 true
    println("str is hello? ${str===hello}") // 比较引用 false
    println("str str2 value equal? ${str==str2}") // 比较值 true
    println("hello is hello2? ${hello===hello2}") // 比较引用 false
}

二、数组

Kotlin java
整型 IntArray int[]
整型-包装类型 Array<Int> Integer[]
字符型 CharArray char[]
字符型-包装类型 Array<Char> Character[]
字符串类型 Array<String> String[]
[java VS Kotlin 对照]

长度不可以变,可以通过foreach,迭代器,for(.. in ..)遍历。

查看是否包含某个元素,可以用indexOf(),若存在返回第一次出现的下标,否则返回-1。源码其实也是用for(.. in .. )实现的。

相关推荐
DjangoJason1 小时前
C++ 仿RabbitMQ实现消息队列项目
开发语言·c++·rabbitmq
m0_480502642 小时前
Rust 入门 KV存储HashMap (十七)
java·开发语言·rust
大阳1232 小时前
线程(基本概念和相关命令)
开发语言·数据结构·经验分享·算法·线程·学习经验
YA3332 小时前
java基础(九)sql基础及索引
java·开发语言·sql
来来走走2 小时前
Flutter开发 webview_flutter的基本使用
android·flutter
奇树谦3 小时前
QT|windwos桌面端应用程序开发,当连接多个显示器的时候,如何获取屏幕编号?
开发语言·qt
Jerry说前后端3 小时前
Android 组件封装实践:从解耦到架构演进
android·前端·架构
weixin_307779133 小时前
VS Code配置MinGW64编译GNU 科学库 (GSL)
开发语言·c++·vscode·算法
froginwe113 小时前
HTML 框架:构建网页布局的基石
开发语言
Yn3123 小时前
在 Python 中使用 json 模块的完整指南
开发语言·python·json