Kotlin 강좌 2 - 변수와 자료형

dyeon-dev·2023년 10월 7일
1

Kotlin

목록 보기
1/17
post-thumbnail

변수 - 데이터를 저장하고 사용하는 기본 단위 변수
자료형 - 그 변수의 형태를 지정하는 자료형

클래스

  • 클래스 이름은 파스칼 표기법(모든 단어를 대문자로 시작)
    ClassName
  • 함수나 변수 이름은 카멜 표기법(첫 단어만 소문자로 시작)
    functionName

변수 선언법

  • var - 일반적으로 통용되는 변수. 언제든 읽기 쓰기 가능
  • val - 선언시에만 초기화 가능. 중간에 값을 변경할 수 없음

변수는 선언 위치에 따라

  • Property(속성) - 클래스에 선언된 변수
  • Local Variable(로컬변수) - 이외의 Scope 내에 선언된 변수

코틀린이 고전적인 언어들과 다른점

  • 고전적 언어: 변수가 선언된 후 초기화되지 않으면 기본값으로 초기화되거나 값이 할당되지 않았다는 표시로 null 값을 가짐
  • 코틀린: 기본변수에서 null을 허용하지 않으며 변수에 값을 할당하지 않은채로 사용하게 되면 문법 에러를 표시하고 컴파일을 막아주므로 의도치 않은 동작이나 null pointer exception 등을 원천적으로 차단해줌.
    null을 하나의 정보로 사용할 경우는 아래와 같이 사용!
    var a:Int? = null

기본 자료형(자바와 거의 동일)

정수형

  • Byte 8bits
  • Short 16bits
  • Int 32bits(기본형)
  • Long 64bits

정수형의 리터럴(코드 내에 값을 표기하는 것)
8진수의 표기는 지원하지 않음
10진수 16진수 2진수 - 32비트 이내의 10진수가 기본형

fun main() {
    var intValue:Int = 1234
    var longValue:Long = 1234L // 더 큰 메모리의 정수
    var intValueByHex:Int = 0x1af // 16진수 - 0x
    var intValueByBin:Int = 0b10110110 // 2진수 - 0b
}

실수형

  • Float 32bits
  • Double 64bits(기본형)
fun main() {
    var doubleValue:Double = 123.5
    var doubleValueWithExp:Double = 123.5e10
    var floatValue:Float = 123.5f // f - 16비트의 float형
}

자바는 최대 범위값이 정해져있따 큰범위의 숫자는 사용할 수 없음!

숫자를 문자열로 계산해서 연산하기도 한다.

문자형

  • Char 1개의 문자
    코틀린은 내부적으로 문자열을 유니코드 인코딩 중에 한 방식인 UTF-18BE로 관리한다. 따라서 글자 하나하나가 2바이트의 메모리 공간을 사용한다.
fun main() {
    var charValue:Char = 'a'
}

문자열

  • ""(따옴표)
fun main() {
    val stringValue = "test"
    val multilineStringValue = """multiline
    string
    test"""
}

논리형

fun main() {
    var booleanValue:Boolean = true
}

0개의 댓글