프로그래밍/Kotlin
[코틀린 / Kotlin] 연산자 (산술, 복합, 대입, 인덱스 연산자, in 연산자, .. 연산자 )
pupu91
2022. 10. 19. 16:30
반응형
산술 연산자(mathematical operator)
var sum = 5 + 8
var sub = 4 - 6
var mul = 3 * 5
println("sum : $sum")
println("sub : $sub")
println("mul : $mul")
var div = 6 / 5
var divDouble = 6.0 / 5.0
var divDouble2 = 6 / 5.toDouble()
println("div : $div")
println("divDouble : $divDouble")
println("divDouble2 : $divDouble2")
var mod1 = 6 % 5
var mod2 = 3 % 3
println("mod1 : $mod1")
println("mod2 : $mod2")
/* 연산 시 오버플로우 주의 */
var intValue1: Int = 2147483647
intValue1 = intValue1 + 1
println("intValue1 : $intValue1")
/* 연산 시 언더플로우 주의 */
var intValue2: Int = -2147483648
intValue2 = intValue2 - 1
println("intValue2 : $intValue2")
출력 결과
sum : 13
sub : -2
mul : 15
div : 1
divDouble : 1.2
divDouble2 : 1.2
mod1 : 1
mod2 : 0
intValue1 : -2147483648
intValue2 : 2147483647
대입 연산자(assignment operator)
/* 단순 값 대입, 수식의 결과 값 대입, 메소드 호출 결과 값 대입 */
var value1 = 100
var value2 = (1 + 3) * (20 / 5)
var value3 = " Hello ".trim()
복합 대입 연산자(augmented assignment operator)
var w1 = 10
w1 += 20
w1 -= 30
w1 *= 40
w1 /= 50
w1 %= 60
증감 연산자
/* 증감연산자 */
var value = 100
value++
println("after value++ : " + value)
value--
println("after value-- : " + value)
출력 결과
after value++ : 101
after value-- : 100
비교 연산자
var r1 = (1 == 1)
var r2 = ("Hello" == "Hello")
var r3 = (2 > 1)
println("(1 == 1) : $r1")
println(""""Hello"== "Hello" : $r2""")
println("(2 > 1) : $r3")
출력 결과
(1 == 1) : true
"Hello"== "Hello" : true
(2 > 1) : true
논리 연산자(logical operator)
var r4 = true && true
var r5 = true && false
var r6 = false || false
var r7 = false || true
부정 연산자
var r8 = !true
var r9 = !false
반응형
인덱스 연산자
var nums = arrayOf(100, 101, 102)
println("nums[0] : " + nums[0])
println("nums[1] : " + nums[1])
println("nums[2] : " + nums[2])
출력 결과
nums[0] : 100
nums[1] : 101
nums[2] : 102
var areaCodeMap = mutableMapOf("02" to "서울", "055" to "경남")
println(areaCodeMap["02"]) //키값 전달 시 벨류 값 반환
println(areaCodeMap["055"])
areaCodeMap["051"] = "부산" //키값으로 벨류 추가
println(areaCodeMap["051"])
출력 결과
서울
경남
부산
in 연산자
(1) 배열, 리스트, 집합 혹은 Range 객체에 특정 원소가 포함 되어 있는지 검사하기 위해 사용
var arr = arrayOf(1,2,3,4,5)
println("3 in arr : ${ 3 in arr }")
println("6 in arr : ${ 6 in arr }")
var list = listOf('a', 'b', 'c', 'd', 'e')
println("'a' in list : ${'a' in list}")
println("'f' in list : ${'f' in list}")
출력 결과
3 in arr : true
6 in arr : false
'a' in list : true
'f' in list : false
(2) .. 연산자를 이용해서 1부터 10까지 범위 정보를 담고 있는 범위 객체 생성
println(1 in 1 .. 10)
var a = 10
println(a in 1 .. 9)
println(1 !in 1..10)
출력 결과
true
false
false
(3) 반복문 사용
for(num in 1..5){
print("$num")
}
println()
var items = arrayOf('a', 'b','c')
for (item in items){
println(item)
}
println()
for((idx, item) in items.withIndex()){
println("$idx : $item")
}
출력 결과
12345
a
b
c
0 : a
1 : b
2 : c반응형