목록프로그래밍/코틀린 (18)
불로구
자료형 검사 - 변수의 자료형을 알아내는 방법은 is 키워드를 사용한다. fun main(){ val a = 127; val b = "abcd"; if(a is Int){ println("인티져"); } if(b is String){ print("문자열"); }else if(b !is String){ print("문자열 아님"); } } Any - 코틀린에서 Any는 자료형을 결정하지 않은채 변수를 선언할 수 있다. - Any는 코틀린의 최상위 기본 클래스로 어떠한 자료형을 표현할 수 있다. - is와 사용하여 자료형을 검사하면, 검사한 자료형으로 스마트 캐스트가 된다. fun main(){ val a : Any; a = "abcd"; if(a is String){ println("스트링"); } } 묵..
코틀란의 자료형은 모두 참조형으로 선언된다고 예전에 포스팅한적이 있다. 그럼 정말 참조형만 사용할까? 아니다. 컴파일을 거쳐가며 Int, Long, Short와 같은 자료형은 기본형으로 변환이 된다. 그렇게 때문에 연산을 할 경우 자료형을 동일하게 변환을 시켜줘야 한다. 자바의 경우 자동 형변환이 있다. 예를 들어.. int a = 10; , double b = a; 라고 선언했을 경우 b의 값을 10.0으로 a의 10이 double타입으로 변환되어 들어간다. 그럼 자바와 비슷한 코틀린에서는? 코틀린에서는 자료형이 다르면 함수를 사용해야 한다. fun main(){ val a: Int = 10 val b: Double = a } 이렇게 선언하면 코틀린에서는 자료형 불일치 오류 ( Type Mismatch..
코틀린은 변수를 사용할 때 반드시 값이 할당되어 있어야 한다. 값이 없는 상태를 NULL이라고 부르는데 코틀린에서 NULL을 사용해보자. fun main(){ var str1 : String = "Hello Kotlin" str1 = null } 일반적으로 이렇게 변수에 NULL을 삽입하려고 하면 에러가 발생한다. 그럼 어떻게 해야할까? fun main(){ var str1 : String? = "Hello Kotlin" str1 = null println(str1) } 이렇게 타입뒤에 '?'를 붙여 null을 할당받을 수 있다고 명시해야한다. 그럼 이번에는 문자열의 길이를 출력해보자 값이 제대로 할당되어 있는 변수의 경우는 간단하다. fun main(){ var str1 : String = "Hello..
코틀린에서의 자료형은 참조형 자료형을 사용한다. 자바의 경우 기본타입과 참조타입으로 나뉘게 되는데 같은 방식이다. 기본형은 가공되지 않은 순수한 자료형을 말하고, 프로그래밍 언어에 내장되어 있다. 참조형은 객체를 생성하고 동적 메모리 영역에 데이터를 둔 다음 이것을 참조하는 것을 의미한다. 위에 자바와 같은 방식이라고 했는데 자바에서는 기본형과 참조형을 분리해서 사용하지만 코틀린에서는 자료형을 참조형만 사용한다. 대신 참조형으로 선언된 변수는 성능 최적화를 위해 컴파일러에서 다시 기본형으로 대체된다. 참조형의 종류 1. 정수자료형 - 코틀린에서 정수 자료형은 부호의 여루보 나뉜다 1) 부호가 있는 정수 자료형 - Long ( 8 Byte ) ( 64 Bit ) ( -2^63 ~ 2^63 - 2 ) - I..