Android/Kotlin (7) 썸네일형 리스트형 Kotlin 정규식 특수문자 replace (한글, 영문, 숫자만) fun main() { val s = "한반두오호Test@@String#123~`!@#$%^&*()_+-=[]{}:;,." val regex = Regex("[^A-Za-z0-9ㄱ-ㅎ가-힣]") val result = regex.replace(s, "") println(result) } 한반두오호TestString123 Kotlin 뒤로 버튼을 한번 더 누르면 종료됩니다. private var lastBackPressed = 0L if (lastBackPressed < SystemClock.elapsedRealtime() - 2000L) { lastBackPressed = SystemClock.elapsedRealtime() Toast.makeText(this, "뒤로 버튼을 한번 더 누르면 종료됩니다.", Toast.LENGTH_SHORT).show() return } finish() 코틀린 널에 대해서 코틀린에 대해서 처음에 언급하는 부분이 NullPointerException(이하 NPE)를 없애기 위해 노력하여, 널 안전성이 높다는 것이다. 코틀린을 비롯한 최신 언어에서 널에 대한 접근 방법은 실행 시점에서 컴파일 시점으로 옮기는 것이다. 널이 될 수 있는지 여부를 컴파일러가 미리 감지해서 실행 시점에 발생하는 오류의 가능성을 줄일 수 있는 것이다. 코틀린에서는 널이될 수 있는 타입을 명시적으로 표현할 수 있다. 자바의 경우를 보면, 어떤 변수가 널이 될 수 있다면 그 변수에 대해 메서드를 호출하게 되면 NPE가 발생할 수 있으므로 안전하지 않다. 반면 코틀린에서는 NPE가 발생할 수 있는 함수 호출을 금지하기 때문에 많은 오류를 방지할 수 있다. 자바와 코틀린에서 널 처리에 대한 코드를 보자. /.. 코틀린 원시 타입 코틀린은 자바와 달리 primitive와 wrapper 타입의 구분이 없다. 자바에서 primitive 타입의 변수 에는 값이 대입되지만, 참조 타입의 변수에는 메모리상에 객체 위치가 들어간다. 참조 타입이 필요한 경우 wrapper 타입으로 primitive타입 값을 감싸서 사용한다. 예를 들면 아래와 같을 것이다. String sNum = 123456789; int iNum = Integer.parseInt(sNum); Boolean isCheck = null; //객체이므로 null이 허용된다. 코틀린은 primitive 타입과 wrapper 타입을 구분하지 않으므로 항상 같은 타입을 사용한다. 아래는 코틀린에서 정수를 표현하는 Int를 사용하는 예제이다. val num: Int = 123 val .. 코틀린 object 코틀린에서 object는 클래스를 정의하면서 동시에 객체(인스턴스)를 생성한다. 대표적으로 싱글턴 객체를 만드는 예를 살펴보자. OOP에서 객체가 하나만 필요한 경우가 많다. 이때 싱글턴 패턴을 통해 이를 구현한다. 자바에서는 보통 클래스 생성자를 private로 제한하고 정적인 필드에 그 클래스의 유일한 객체를 저장하는 싱글턴 패턴을 통해 이를 구현한다. 아래 코드를 참조하자. class SingletonCls { private static SingletonCls singletonCls; private StingletonCls(){} public static SingletonCls instance() { if (singletonCls == null) { singletonCls = new Singleto.. 코틀린 클래스, 코틀린 프로퍼티 코틀린의 장점은 자바 대비 더 적은 양의 코드로 클래스와 관련된 대부분의 작업을 수행할 수 있다. 아래 자바코드를 살펴보자. 필드가 늘어나면 늘어날 수록 생성자 본문에 반복적으로 들어가는 경우가 많다. public class Member { private String name; private int age; public Member(String name, int age) { this.name = name; this.age = age; } public String getName() { return name; } public int getAge() { return age; } } 자바에서 Member 클래스를 사용하는 방법은 아래와 같다. Member member = new Member("홍길동", 20);.. 코틀린은 무엇인가? 코틀린은 젯브레인스에서 만든 프로그래밍 언어다. 2016년에 정식 발표 되었다. 코틀린은 자바에서 실행되는 새로운 프로그래밍 언어다. 코틀린은 간결하고 실용적이며 자바 코드와의 상호운용성을 중시한다. 현재 자바가 사용 중인 곳이라면 코틀린을 사용할 수 있다. 대표적으로 안드로이드 개발, 서버 사이드 개발에서 코틀린을 사용할 수 있다. 특히 안드로이드는 기존 자바에서 코틀린으로 공식언어를 교체하였다. 현재 최신 라이브러리인 Jetpack Compose는 코틀린으로 만들어져 있다. 코틀린은 타입 추론을 지원하는 정적 타입 지정 언어다. 소스코드를 간결하게 유지할 수 있다. //Java int size = 5; String name = "Kotlin" float rate = 3.14f //Kotlin var .. 이전 1 다음