Kotlin операторы
#KotlinОператоры — это специальные символы, которые выполняют различные операции над операндами. Например, + и — это операторы, которые выполняют сложение и вычитание соответственно. Как и Java, Kotlin содержит различные виды операторов.
- Арифметический оператор
- Оператор связи
- Оператор присваивания
- Унарный оператор
- Логический оператор
- Битовый оператор
Airthmetic Operators —

fun main(args: Array<String>)
{
var a = 20 var b = 4 println("a + b = " + (a + b))
println("a - b = " + (a - b))
println("a * b = " + (a.times(b)))
println("a / b = " + (a / b))
println("a % b = " + (a.rem(b)))
}
Выход:
a + b = 24 a - b = 16 a * b = 80 a / b = 5 a % b = 0
Операторы отношений —

fun main(args: Array<String>)
{
var c = 30
var d = 40
println("c > d = "+(c>d))
println("c < d = "+(c.compareTo(d) < 0))
println("c >= d = "+(c>=d))
println("c <= d = "+(c.compareTo(d) <= 0))
println("c == d = "+(c==d))
println("c != d = "+(!(c?.equals(d) ?: (d === null))))
}
Выход:
c > d = false c = d = false c Assignment Operators -

fun main(args : Array<String>){
var a = 10
var b = 5
a+=b
println(a)
a-=b
println(a)
a*=b
println(a)
a/=b
println(a)
a%=b
println(a)
}
Выход:
15 10 50 10 0
Унарные операторы —

fun main(args : Array<String>){
var e=10
var flag = true
println("First print then increment: "+ e++)
println("First increment then print: "+ ++e)
println("First print then decrement: "+ e--)
println("First decrement then print: "+ --e)
}
Выход:
First print then increment: 10 First increment then print: 12 First print then decrement: 12 First decrement then print: 10
Логические операторы —

fun main(args : Array<String>){
var x = 100
var y = 25
var z = 10
var result = false
if(x > y && x > z)
println(x)
if(x < y || x > z)
println(y)
if( result.not())
println("Logical operators")
}
Выход:
100 25 Logical operators
Битовые операторы —

fun main(args: Array<String>)
{
println("5 signed shift left by 1 bit: " + 5.shl(1))
println("10 signed shift right by 2 bits: : " + 10.shr(2))
println("12 unsigned shift right by 2 bits: " + 12.ushr(2))
println("36 bitwise and 22: " + 36.and(22))
println("36 bitwise or 22: " + 36.or(22))
println("36 bitwise xor 22: " + 36.xor(22))
println("14 bitwise inverse is: " + 14.inv())
}
Выход:
5 signed shift left by 1 bit: 10 10 signed shift right by 2 bits: : 2 12 unsigned shift right by 2 bits: 3 36 bitwise and 22: 4 36 bitwise or 22: 54 36 bitwise xor 22: 50 14 bitwise inverse is: -15