Kotlin 教程

浏览7644
更新时间2025-08-14

Kotlin 数据类型

在 Kotlin 中,变量的类型由它的值决定:

实例

val myNum = 5             // Int
val myDoubleNum = 5.99    // Double
val myLetter = 'D'        // Char
val myBoolean = true      // Boolean
val myText = "Hello"      // String

但是,您从上一章中了解到,如果需要,也可以指定类型:

实例

val myNum: Int = 5                // Int
val myDoubleNum: Double = 5.99    // Double
val myLetter: Char = 'D'          // Char
val myBoolean: Boolean = true     // Boolean
val myText: String = "Hello"      // String

有时您必须指定类型,但通常不需要。无论如何,了解不同类型所代表的含义是件好事。

稍后你将了解何时需要指定类型。

数据类型分为不同的组:

  • 数字
  • 字符
  • 布尔值
  • 字符串
  • 数组

数字

数字类型分为两组:

整数类型存储整数,正数或负数(例如 123 或 -456),不带小数。有效类型为 Byte、Short、Int 和 Long。

浮点类型表示带有小数部分的数字,包含一位或多位小数。有两种类型:Float 和 Double。

提示:如果您没有指定数值变量的类型,则通常将整数返回为 Int,将浮点数返回为 Double。

整数类型

Byte

Byte 数据类型可以存储从 -128 到 127 的整数。当您确定该值在 -128 到 127 之间时,可以用它来代替 Int 或其他整数类型以节省内存:

实例

val myNum: Byte = 100
println(myNum)

Short

Short 数据类型可以存储从 -32768 到 32767 的整数:

实例

val myNum: Short = 5000
println(myNum)

Int

Int 数据类型可以存储从 -2147483648 到 2147483647 的整数:

实例

val myNum: Int = 100000
println(myNum)

Long

Long 数据类型可以存储从 -9223372036854775807 到 9223372036854775807 的整数。当 Int 不够大以存储值时,会使用它。可选地,你可以在数值后面加上 "L":

实例

val myNum: Long = 15000000000L
println(myNum)

Int 和 Long 之间的区别

只要整数不超过 2147483647,它就是 Int。如果超过该值,则定义为 Long:

实例

val myNum1 = 2147483647  // Int
val myNum2 = 2147483648  // Long

浮点类型

浮点类型表示带小数的数字,例如 9.99 或 3.14515。

Float 和 Double 数据类型可以存储小数:

Float Example

val myNum: Float = 5.75F
println(myNum)

Double Example

val myNum: Double = 19.99
println(myNum)

使用浮点型还是双精度型?

浮点值的精度指示值在小数点后可以有多少位数字。Float 的精度只有 6 到 7 位小数,而 Double 变量的精度约为 15 位。因此,对于大多数计算来说,使用 Double 更安全。

还要注意,你应该以 F 结尾来表示 Float 类型的值。

科学计数法

浮点数也可以是带有 e 或 E 的科学计数法,表示 10 的幂:

实例

val myNum1: Float = 35E3F
val myNum2: Double = 12E4
println(myNum1)
println(myNum2)

布尔值

布尔数据类型并且只能取值 true 或 false:

实例

val isKotlinFun: Boolean = true
val isFishTasty: Boolean = false
println(isKotlinFun)   // 输出 true
println(isFishTasty)   // 输出 false 

布尔值主要用于条件测试,您将在后面的章节中了解更多信息。

字符

Char 数据类型用于存储单个字符。字符值必须用单引号括起来,例如 'A' 或 'c':

实例

val myGrade: Char = 'B'
println(myGrade)

与 Java 不同,您不能使用 ASCII 值来显示某些字符。在 Java 中,值 66 会输出 "B",但在 Kotlin 中会生成错误:

实例

val myLetter: Char = 66
println(myLetter) // 错误

字符串

String 数据类型用于存储字符序列(文本)。字符串值必须用双引号括起来:

实例

val myText: String = "Hello World"
println(myText)

您将在字符串一章中了解有关字符串的更多信息。

数组

数组用于在单个变量中存储多个值,而不是为每个值声明单独的变量。

您将在数组一章中了解有关数组的更多信息。

类型转换

类型转换是指将一种数据类型的值转换为另一种类型。

在 Kotlin 中,数值类型转换与 Java 不同。例如,无法使用以下代码将 Int 类型转换为 Long 类型:

实例

val x: Int = 5
val y: Long = x
println(y) // 错误:类型不匹配

要将一种数值数据类型转换为另一种类型,你必须使用以下函数之一:toByte()、toShort()、toInt()、toLong()、toFloat()、toDouble() 或 toChar():

实例

val x: Int = 5
val y: Long = x.toLong()
println(y)

相关视频

更多

免费

phpStudy极速入门视频教程
初级phpStudy极速入门视频教程

54.6万次学习

收藏

免费

phpStudy V8 视频教程
初级phpStudy V8 视频教程

38.8万次学习

收藏

免费

小皮面板使用视频教程
初级小皮面板使用视频教程

21.6万次学习

收藏

免费

好课诞生记
初级好课诞生记

7.1万次学习

收藏

精品课程

更多
前端入门_HTML5
前端入门_HTML5

共29课时

65万人学习

CSS视频教程-玉女心经版
CSS视频教程-玉女心经版

共25课时

41.3万人学习

JavaScript极速入门_玉女心经系列
JavaScript极速入门_玉女心经系列

共43课时

76.8万人学习

独孤九贱(1)_HTML5视频教程
独孤九贱(1)_HTML5视频教程

共25课时

64.2万人学习

独孤九贱(2)_CSS视频教程
独孤九贱(2)_CSS视频教程

共22课时

24.4万人学习

独孤九贱(3)_JavaScript视频教程
独孤九贱(3)_JavaScript视频教程

共28课时

36.3万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时

133.5万人学习

热门下载

更多
phpStudy 2018最新版
phpStudy 2018最新版

集成PHP7,16种组合,超全大合集

下载

VC9 32位
VC9 32位

VC9 32位 phpstudy集成安装环境运行库

下载

VC11 32位
VC11 32位

VC11 32位 phpstudy集成安装环境运行库​

下载

php程序员工具箱完整版
php程序员工具箱完整版

程序员工具箱 v1.0 php集成环境

下载

VC14 32位
VC14 32位

VC14 32位 phpstudy安装环境运行库

下载

SublimeText3汉化版
SublimeText3汉化版

中文版,非常好用

下载

Notepad++ Windows版
Notepad++ Windows版

Notepad++ 8.9.7 Windows版官方安装包,适合 Windows 用户进行代码编辑、文本处理、语法高亮和插件扩展配置。

下载