본문 바로가기

Programming/Android&Kotlin

[Android, Kotlin] 문법 정리

728x90
반응형

1. 변수

코틀린에서는 변수 선언을 할 때 아래와 같이 선언한다.

javascript와 비슷하게 var을 사용한다. 선언과 동시에 값을 할당할 경우 바로 type이 지정되며, 직접 클론 ':' 을 사용해서 type을 지정할 수 있다. 

var [variable name] = [value]
var [variable name] : [variable type]
var [variable name] : [variable type] = [value]

 

type 종류는 아래와 같다.

  Data Type  
불리언형 Boolean true or false
문자형 String 문자열
Char 문자
숫자값 Double 64 bit 실수
Float 32 bit 실수
Long 64 bit 정수
Int 32 bit 정수
Short 16 bit 정수
Byte 8 bit 정수

 

 

2. 상수

상수는 val을 사용하여 선언한다.

val [variable name] = [value]
val [variable name] : [variable type] = [value]

상수명은 대문자를 사용해서 선언하는 것을 추천한다.

val NAME : String = "jungmonster"

 

 

3. 변수에 조건문 사용법

변수에 조건문을 사용해서 값을 할당 할할당할 수도 있다. 아래와 같이 data에 값을 할당할 때, checker의 값에 따라 값을 바꿔가면서 하게 만들 수 있다.

val checker : Boolean = true
var number1 : Int = 100
var number2 : Int = 200
var data = if(checker)
{
	number1
}
else{
	number2
}

 

 

4. when

다른 언어의 switch문과 같은 방법으로 사용할 수 있다.

 

4.1 기본 형태

when( [parameter] ){
	[condition 1] -> {
    }
    
    [condition 2] -> {
    }
    else -> {			// condition 에 없을 때
    }
}

ex)

var num = 1
when( num ){
	0 -> {
    	//
    }
	1, 2 -> {    	// 값을 여러개로 지정 가능
    	// 
    }    
    in 3..10 -> {  	// 범위로도 지정 가능
    	//
    }
    !in 20..40 { 	// 예외의 범위도 가능
    }
    else -> {
    	//
    }
}

 

4.2 파라미터를 사용 X

파라미터 없이 if else 문처럼 사용 가능하다.

var num = 10
when{
	num == 10 -> {
    	//
    }
	num > 20 -> {    	// 값을 여러개로 지정 가능
    	// 
    }    
    else -> {
    	//
    }
}

 

 

5. 배열

배열은 선언 초기에 크기를 할당하고 컬렉션은 동적 배열로 사용 가능하다.

배열은 아래같이 사용 한다.

var intArr 		= IntArray(10)
var longArr		= LongArray(10)
var charArr 	= CharArray(10)
var floatArr 	= FloatArray(10)
var DoubleArr 	= DoubleArray(10)

 

String은 StringArray가 없지만 아래와 같은 방법으로 사용 가능하다.

var stringArr = Array(10, {item->""})
var stringArr = arrayOf("AAA", "BBB", "CCC", "DDD")

기타 사용 방법은 아래와 같다.

var intArr = IntArray(10)
intArr[0] = 1               // change index 0 value
intArr.set(1, 10)           // change index 1 value

var data1 = intArr[3]       // get index 3 value
var data2 = intArr.get(4)   // get index 4
var size = intArr.size      // get size

 

6. 컬렉션

동적 자료형에는 List, Map, Set이 있다. 사용할 때는 Mutable이 접두어(prefix)가 붙는다.

 

list 사용법

var emptyList = mutableListOf<String>();        // 빈 string List 생성
var list = mutableListOf("AAA", "BBB", "CCC")   // 생성
list.add("DDD")
list[1] = "EEE"
list.removeAt(2)
var getData = list[2]
var listSize = list.size

Set, list와 달리 index와 값 중복이 허용되지 않는다.

var set = mutableSetOf<String>()
set.add("AAA")
set.add("BBB")
// set.add("AAA") set 은 List와 달리 index가 없으며 값 중복이 안된다.

 

Map은 Key와 Value 쌍으로 사용된다.

var map = mutableMapOf<String, String>()
map.put("AAA", "aaa")
map.put("BBB", "bbb")
map.remove("BBB")

 

반응형

'Programming > Android&Kotlin' 카테고리의 다른 글

[Android, Kotlin] Null Safety  (0) 2020.09.06
[Android, Kotlin] class 사용  (0) 2020.09.06
[Android, Kotlin] Kotlin Function  (0) 2020.09.06
[Android, Kotlin] 문법정리 2, for문  (0) 2020.09.06