Programming/Android&Kotlin

[Android, Kotlin] Null Safety

JMob 2020. 9. 6. 22:07
728x90
반응형

1. Null Safety 

코틀린에서는 기본 변수에는 null을 할당할 수 없다.

null을 사용 가능하게 하기 위해서는 선언할 때 '?'을 사용해서 사용 허용을 해야 한다.

var Str : String = null			// error 발생
var Str2 : String? = null

 

2. Function에 사용

Function parameter에서도 null을 허용하려면 '?'을 사용해야 한다.

fun func01(str : String?)
{
	if (str == null)
	{
		Log.d("jmob", "str is null")    
	}
	else
	{
		Log.d("jmob", "str is data")
	}
}

 

null을 리턴하기 위해서는 return 값에 '?'을 해줘야 한다.

fun fun02(str : String) : Int? {
	return null
}

 

 

3. Safety Call '.?'

nullable인 변수를 사용하게 null인지 체크하고 멤버 변수를 사용할 수 있도록 만들 수 있다.

아래에 코드에서 length를 얻기 전에 null이면 length를 호출하고 아니면 호출하지 않는다.

fun fun01(value : String?) : Int?
{
	val len : Int? = value?.length
	return len
}

 

null일 경우 null을 리턴하지 않고 기본값을 설정해줄 수도 있다.

아래 코드에서 '?:'을 사용해서 null 일 경우 0을 기본값으로 지정할 수 있다.

fun fun02(value : String?) : Int
{
	val len : Int = value?.length?:0
	return len
}
728x90
반응형

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

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