본문 바로가기
언어/코틀린

[Kotlin] 데이터 타입

by 코딩히어로 2022. 6. 10.
728x90

제목


코틀린을 사용하기 위해서는 사용되는 데이터 타입을 먼저 알아야 합니다

코틀린은 모든 변수가 객체로 이루어져 있다는 점이 다른 언어와 다른 점입니다

예를 들어 정수를 다루는 타입이 Int로 되어 있는데 이는 기초 데이터 타입이 아니라 클래스입니다

 

fun Fun(){
	var test1: Int = 10
	var test2: Int? = null		// null 대입 가능
    
    	test1 = test1 + 10
    	test1 = test1.plus(10)		// 객체의 메서드 이용
}

 

위 코드에서 test1과 test2 변수를  Int 타입으로 선언했습니다

만약 Int 타입이 기초 데이터 타입이라면 변수에 null을 대입할 수 없고 메서드를 호출할 수도 없습니다

하지만 코틀린의 모든 타입은 객체이므로 Int 타입의 변수에 10이라는 정수뿐만 아니라 null도 대입을 할 수 있습니다

 

 

기초 타입 객체


Int, Short, Long, Double, Float, Byte, Boolean

기초 데이터를 객체로 표현하는 타입입니다

val t1: Byte = 0b00001111

val t2: Int = 123
val t3: Short = 123
val t4: Long = 10L
val t5: Double = 10.0
val t6: Float = 10.0f

val t7: Boolean = true

 

 

문자와 문자열


Char, String

문자와 문자열을 표현하는 타입입니다

val t: Char = 'a'			
if(a == 1){			// 에러!!!
}

Char의 경우에는 Number 타입으로 표현이 안되며 반드시 작은따옴표( ' )를 사용해야 합니다

 

fun main(){
	val str1 = "Hello\n"
	val str2 = """
    		Hello
        	World
        	"""
}

String의 경우에는 큰따옴표( " )를 사용해야 합니다

큰따옴표를 세개 사용하는 것을 삼중 따옴표라고 하는데 해당 삼중 따옴표를 사용하면

안드로이드 스튜디오에서는 자동으로 따옴표 뒤에 .trimIndent() 함수가 추가됩니다

이 함수를 통해 문자열 앞에 공백을 제거하게 됩니다

 

String 타입의 데이터에 어떤 연산식의 결과값을 포함해야 할 때는 $기호를 이용합니다

이를 문자열 템플릿이라고 부릅니다

fun main(){
	fun sum(no: Int): Int{
    		var sum = 0
    		for(i in 1..no){
        		sum += i
    		}
    		return sum
	}
	println("sum : ${sum(10)}")
}

 

 

모든 타입


Any

코틀린에서 Any는 최상위 클래스입니다

모든 코틀린의 클래스는 Any의 하위 클래스입니다

Any 타입으로 선언한 변수에는 모든 타입의 데이터를 할당할 수 있습니다

val test1: Any = 10
val test2: Any = "Hello"

class Fun
val test3: Any = Fun()

 

728x90
반응형

'언어 > 코틀린' 카테고리의 다른 글

[Kotlin] 클래스와 생성자  (6) 2022.06.14
[Kotlin] 조건문 When  (2) 2022.06.13
[Kotlin] 함수 선언  (2) 2022.06.13
[Kotlin] 변수 선언  (1) 2022.06.10
[Kotlin] 코틀린이란?  (0) 2021.10.26

댓글