第8章 运算符
Kotlin语言中的运算符(也称操作符)在功能上都与Java、C 和C++极为相似。本章为大家介绍Kotlin语言中一些主要的运算符,包括算术运算符、关系运算符、逻辑运算符、位运算符和其他运算符。
8.1 算术运算符
Kotlin中的算术运算符主要用来组织数值类型数据的算术运算,按照参加运算的操作数的不同可以分为一元运算符和二元运算符。
8.1.1 一元运算符
算术一元运算符一共有3个,分别是-、++和–。具体说明参见表8-1。
表8-1中,-a是对a取反运算,a++或a–是在表达式运算完后,再给a加一或减一。而++a或–a是先给a加一或减一,然后再进行表达式运算。
示例代码如下:
//代码文件:chapter8/src/com/a51work6/ch8.1.1.kt
package com.a51work6
fun main(args: Array) {
var a = 12
println(-a) //a取反,结果输出是-12 ①
var b = a++ ②
println(b) //结果输出是12
b = ++a ③
println(b) //结果输出是14
}
上述代码第①行是-a,是把a变量取反,结果输出是-12。第②行代码是先把a赋值给b变量再加一,即先赋值后++,因此输出结果是12。第③行代码是把a加一,然后把a赋值给b变量,即先++后赋值,因此输出结果是14。
8.1.2 二元运算符
二元运算符包括:+、-、*、/和%,这些运算符对数值类型数据都有效,具体说明参见表8-2。
示例代码如下:
//代码文件:chapter8/src/com/a51work6/ch8.1.2.kt
package com.a51work6
fun main(args: Array) {
//声明一个字符类型变量
val charNum = ‘A’ //'A’字符的Unicode编码是65 ①
// 声明一个整数类型变量
var intResult = charNum.toInt() + 1
println(intResult) //输出66
intResult = intResult - 1
println(intResult) //输出65
intResult = intResult * 2
println(intResult) //输出130
intResult = intResult / 2
println(intResult) //输出65
intResult = intResult + 8
intResult = intResult % 7
println(intResult) //输出3
println("-------")
// 声明一个浮点类型变量
var doubleResult = 10.0
println(doubleResult) //输出10.0
doubleResult = doubleResult - 1
println(doubleResult) //输出9.0
doubleResult = doubleResult * 2
println(doubleResult) //输出18.0
doubleResult = doubleResult / 2
println(doubleResult) //输出9.0
doubleResult = doubleResult + 8
doubleResult = doubleResult % 7
println(doubleResult) //输出3.0
}
上述例子中分别对数值类型数据进行了二元运算,其中代码第①行将字符类型变量charNum与整数类型进行加法运算,参与运算的该字符(‘A’)的Unicode编码为65。其他代码比较简单不再赘述。
8.1.3 算术赋值运算符
算术赋值运算符只是一种简写,一般用于变量自身的变化,具体说