변수와 데이터 타입

Anna·2024년 5월 2일
0

코틀린

목록 보기
3/28
post-thumbnail

변수란

값을 저장하기 위한 저장공간이다.
코틀린에서는 변수를 선언할 때, 변경이 가능한 변수와 변경이 불가능한 변수로 나누어서 선언한다.
추가로, 코틀린은 자바와 달리 변수를 property (프로퍼티) 라고 한다.


변수의 선언

코틀린에서 변수의 선언은 valvar를 사용한다.

val
value의 약어, 변경 불가능(immutable)한 변수 (자바 - final에 해당한다.)
var
variable의 약어, 변경이 가능(mutable)한 변수 (자바 - 일반 변수와 같다.)


변수를 선언하는 경우 아래와 같은 포맷으로 진행된다.

변수를 선언할 때 데이터 타입은 생략 가능하며, 값을 가지고 자료형을 자동으로 지정할 수 있다. 이것을 자료형 추론이라고 한다.


데이터 타입

코틀린은 레터런스 데이터 타입(Reference Data Type)을 사용한다.
Reference Data Type이란 객체(메모리)를 생성하고 데이터를 할당하는 방식을 의미한다.
다마 참조형으로 생성된 객테는 컴파일 과정에서 기본형으로 대체되어 문제 없이 사용할 수 있다.
데이터 타입의 최상위 클래스로는 Any가 있다.

데이터 타입(int, double...)가 아닌(Int Double...)로 대문자로 사용한다. 이것은 Reference Data Type다.

정수형 데이터 타입

Long(64bits), Int(32bits), Short(16bits), Byte(8bits)
기본적으로 Int로 추론되며, 숫자 뒤에 L을 붙여주면 Long타입으로 추론한다.
작은 숫자 또한 Int로 추론되기 때문에 Short, Byte를 사용하기 위해서는 명시적으로 적어줘야 한다.

예시
val a = 1

a뒤에 안 보이지만 자동으로 Int로 추론된다. 즉, val a (: Int) = 1
그래서 1뒤에L를 적으면 Long타입으로 추론해준다. 즉, val a = 1L

실수형 데이터 타입

Double(bits), Float(32)
실수형은 기본적으로 Double 타입으로 추론된다.


논라형 데이터 타입

Boolean : true, false


문자 데이터 타입 - Char(16bits)

리터럴은 작은따옴표 (') 사이에 문자를 넣으면 된다.

val alpha = 'h'
val a = 'r'

특수문자를 위해 이스케이프를 제공한다.
\t : tab
\b : 백스페이스
\n : 새 줄(다음 줄)
\r : 캐리지 리턴
\' : 작은따옴표, \" : 큰 따옴표
\\는 역 슬래쉬
\$ : 달러 표시

Char 자체를 수타입으로 취급하지 않지만, 유니코드 문자 집합 내에서 몇가지 산술 연산을 허용한다.

  • +/- 연산자로 문자에 수를 더하거나 뺄수 있다. 더하거나 뺀 만큼 코드 포인트가 이동한 새 문자를 반환
println(a + 5)   //a보다 뒤에 있는 다섯 번째 글자인 f를 출력함.
  • 두 문자로 뺄샘을 하면 두 문자의 코드 포인트간 거리를 얻을 수 있다.
println(h - a)   // 'a'와 'h' 사이의 거리를 출력함 7
  • 문자를 ++ 또는 --로 증가, 감소 시킬 수 있다.
println(--h)   //'h' 바로 앞 글자
println(++a)   //'a' 바로 뒤 글자

문자열 데이터 타입 - Sting

리터럴은 큰따옴표(") 사이에 문자를 넣으면 된다.

fun main()
{
	val name = "Hyereyong"
    val lastname = "Ju"
    println("My name is ${name + lastname}")
}
// 출력 결과 My name isHyereyongJu.

0개의 댓글