kotlin 자료형 검사하기

Kotlin DEVELOPMENT

선언된 변수의 자료형을 검사하려면 다음과 같이 하면 된다. [kt]val name: String = “Kotlin”if(name is String){ println(“변수 name은 String 형입니다.”)}else{ println(“변수 name은 String 형이 아닙니다.”)}[/kt] is 키워드를 이용하여 변수의 자료형을 확인할 수 있다.반대로는 !is를 이용하면 특정 변수형이 아님을 판별 할 수도 있다.

Continue Reading

kotlin 변수에 null 할당하기

Kotlin DEVELOPMENT

kotlin은 기본적으로 NPE free하게 설계가 되어서 변수에 null을 할당할 수 없다. [kt]val name: String = null[/kt] 위와 같이 선언하면 오류가 발생한다. 하지만 null을 허용해야 하는 경우라면?다음과 같이 자료형에 ?를 붙여주면 해당 변수에 null을 할당할 수 있다. [kt]val name: String? = null[/kt] ?로 선언한 변수에 null 값이 들어있는 상태에서 해당 변수를 호출하면?당연하게도 NPE가 발생한다. 이를 방지하기 …

Continue Reading

Kotlin typealias

Kotlin DEVELOPMENT

코틀린에서 개발 시 다른 패키지의 클래스를 사용 시 현재 패키지의 클래스명과 일치하는 경우 혹은 클래스 명이 너무 길어서 짧게 별칭으로 사용하고 싶을 때가 있다.import 한 클래스에 별칭을 사용하려면 다음과 같이 사용한다. import com.itchefblog.project.Member as User 위와 같이 as 키워드를 사용하여 Member 클래스를 User로 치환하여 import 시키면val member: Member; 처럼 사용하던 것을 val member: User과 같이 …

Continue Reading

로그 남기기 Log.d(“태그”, “메세지”)

Kotlin Android DEVELOPMENT IT

태그 – 로그캣에는 많은 내용이 표시되므로 필터링 할 때 사용한다.메세지 – 출력할 메세지를 작성한다. 이 외에도 다음과 같은 로그 메서드가 있다. Log.e() : 에러 베세지를 표시할 때 사용Log.w() : 경고 메세지를 표시할 때 사용Log.i() : 정보성 로그를 표시할 때 사용Log.v() : 모든 로그를 표시할 때 사용

Continue Reading

Kotlin File IO

Kotlin DEVELOPMENT IT

[kt] //파일 쓰기 1 import java.io.IOException import java.nio.file.Files import java.nio.file.Paths import java.nio.file.StandardOpenOption fun main(){ val path = "/file/path/hello.txt" val text = "안녕안녕안녕안녕n헬로헬로헬로헬로" try { Files.write(Paths.get(path), text.toByteArray(), StandardOpenOption.CREATE) }catch(e: IOException){ //Exception 처리 } } //standardOpenOption의 옵션은 CREATE, APPEND, WRITE, READ가 있다. [/kt] [kt] //파일 쓰기 2 import java.io.File import java.io.FileWriter import java.io.PrintWriter fun main(){ val outString: …

Continue Reading

SharedPreferences 사용법

Android Kotlin DEVELOPMENT IT

[kt] //데이터 저장 val pref = PreferenceManager.getDefaultSharedPreferenced(this) val editor = pref.edit() editor.putInt("KEY1", value) .putInt("KEY2", value2) .apply() //프리퍼런스 매니저를 사용해 프리퍼런스 객체를 얻은 후 에디터 객체를 얻음 //데이터 객체에 put[데이터 타입] 형식의 메서드를 사용하여 키와 값 형태의 쌍으로 저장을 한다. //put 메서드는 기본 타입은 모두 지원함. //apply()로 설정한 내용을 반영 //데이터 가져오기 val pref = PreferenceManager.getDefaultSharedPreferenced(this) …

Continue Reading

Intent로 새 액티비티 띄우는 코드 with Data → Anko

Kotlin Android DEVELOPMENT IT

[kt] //기존의 코드 val intent = Intent(this, ResultActivity::class.java) startActivity(intent) //Anko 라이브러리 코드 startActivity<ResultActivity>() //와우!! ———————————————— //데이터 전달 시 Java 코드 val intent = Intent(this, ResultActivity::class.java) intent.putExtra("weight", weightEditText.text.toString()) intent.putExtra("height", heightEditText.text.toString()) startActivity(intent) //Anko 적용 시 startActivity<ResultActivity>( "weight" to weightEditText.text.toString(), "height" to heightEditText.text.toString() ) ———————————————— //데이터 받는 방법 val height = intent.getStringExtra("height").toInt() val weight = intent.getStringExtra("weight").toInt() [/kt]

Continue Reading

Kotlin의 Companion Object와 Object

Kotlin DEVELOPMENT IT

Kotlin에서 Class내에 companion object로 선언하면 객체를 생성하지 않아도 해당 프로퍼티에 접근하여 사용 가능하다. [kotlin] class Person { var id: String = "itchef" var name: String = "Azeze" companion object { var language: String = "Korean" fun work(){ println("working….") } } } fun main(){ println(Person.language) Person.language = "English" println(Person.language) Person.work() } [/kotlin] 실행결과 Korean English working…. …

Continue Reading