[Kotlin][학습노트] 기본 자료형과 변수 선언

tora·2021년 6월 27일

코틀린 기본 자료형

Byte	//1byte 정수형
Short	//2byte 정수형
Int	//4byte 정수형
Long	//8byte 정수형
Float	//4byte 실수형
Double	//8byte 실수형
Boolean	//논리형
Char	//문자
String	//문자열
  1. 코틀린의 기본 자료형은 참조형 변수
    : 직접 값을 할당하는 방식이 아닌, 주소값을 통해 찾아가는 방식 (java에서 Date처럼)
    -> 코틀린 컴파일 과정에서 기본형으로 대체된다
    -> 기본 자료형 쓰려고 하면 에러
    var num : int = 5	//에러 : Unresolved reference: int
  2. == 값 비교 / === 참조 비교 가능
    var st1 = "hi"
    var st2 = "h"
    st2 += "i"
    
    println("st1 $st1 / st2 $st2")	//st1 hi / st2 hi
    println(st1 == st2)			//true
    println(st1 === st2)		//false
  1. 접두사(0x, 0b 등), 접미사(L, F 등)으로 자료형 명시 가능
    -> 0x : 16진 표기된 정수 / 0b : 2진 표기된 정수
    -> 숫자형 값 선언 시 언더바 _ 사용가능 (가독성용)
    val b = 0b0000_1111
    
    println("$b")	//--> 15

코틀린 변수 선언문

  • [선언키워드][변수명]: [자료형] = [값]
 val num:Int = 5
 var st1:String = "hi"
 var st2 = "hello"
  1. 선언 키워드 : val 불변형 / var 가변형
  2. 값을 함께 할당하는 경우에는 :자료형 명시를 생략하더라도 컴파일러가 추론해서 처리
    -> 선언만 하는 경우에는 생략하면 에러
    val username
    username="koltin user"
    
    //에러
    //This variable must either have a type annotation or be initialized

-> 명시하지 않았다고 하더라도, 정적 자료형이기 때문에 선언 이후 다른 자료형을 할당하면 에러

   var st1 = "hi"
   st1=3
   println("$st1")
   
   //에러
   //The integer literal does not conform to the expected type String

-> 기본적으로, 숫자형 변수의 타입 추론은
정수 : Int / 실수 : double 로 추론

  1. 문자열 내에서 변수 값 사용시 ${변수명} 으로 값 붙여넣기 가능

[오늘의 궁금]

Q1) 코틀린 최초 컴파일 시에 생성된다는 config 파일이 뭘까? c언어에서의 .mk .o 파일 같은건가??

> [오늘의 궁금]은 앞으로 배우면서 Answer을 채워갈 예정입니다.
(누군가 도움을 주신다면 감사할거에요 :D )


0개의 댓글