본문 바로가기

개발/코틀린(kotlin)26

[Kotlin] 코틀린 삼중따옴표, 정규식, 문자열, 중첩함수 , 확장함수 출처 - https://tourspace.tistory.com/105?category=797357 3.5 문자열과 정규식 코틀린에서 기본 라이브러리에서 자바에서 좀더 확장된 함수들(API)를 제공합니다. 3.5.1 split의 사용 문자열을 분할하기 위해서는 split을 사용합니다. split 함수는 인자로 정규 표현식을 받습니다. 따라서 "123.456-7.AB".split(""."")를 수행하면 반환값이 없습니다. 정규 표현식에서 "."은 문자열 전체를 나타내기 때문입니다. 이런 잘못된 사용을 막기위해 코틀린에서는 일반문자열을 받는건지, 정규표현식이 들어오는건지를 구분합니다. fun main(args: Array) { println("12.345-6.A".split("\\.|-".toRegex())).. 2020. 1. 29.
[Kotlin] 코틀린 확장함수와 프로퍼티, 가변인자, 중위함수 출처 - https://tourspace.tistory.com/104?category=797357 3.3 확장함수 확장함수 (Extension Function)는 클래스의 멤버 메서드처럼 호출되지만 클래스 밖에 호출되는 함수 입니다. 앞서 포스팅에서 joinToString() 함수로 예를 들어서 봤었죠. 간단하게 String에 마지막 값을 반환하는 함수를 String class에 추가하려면 아래와 같이 할 수 있습니다. package strings fun String.lastChar(): Char = this.get(this.length-1) 특정 클래스에 확장 함수를 추가하려면 위 예제처럼 function을 만들때 앞에 해당 class를 붙여주면 됩니다. Receiver type: 확장이 정의될 클래스.. 2020. 1. 29.
[Kotlin] 코틀린의 Collection 출처 - https://tourspace.tistory.com/103?category=797357 3.1 코틀린에서 컬렉션 사용 시작하면서 먼저 언급하자면 코틀린은 따로 collection을 라이브러로 만들어서 제공하지 않습니다. Java의 collection을 그대로 사용한다는 얘기입니다. 다만 몇가지 확장성 있는 API를 제공합니다. 먼저 코틀린에서 collection을 사용해 보겠습니다. val set = hashSetOf(1, 7, 53) val list = arrayListOf(1, 7, 53) val map = hashMapOf(1 to "one", 7 to "seven", 53 to "fifty-three") fun main(args: Array) { println(set.javaClass).. 2020. 1. 29.
[Kotlin] 코틀린의 기초 #4 exception 처리 출처 - https://tourspace.tistory.com/101?category=797357 2.5 Kotlin의 예외처리 기본적으로 코틀린의 예외처리는 java와 같습니다. fun readNumber(reader: BufferedReader): Int? { try { val line = reader.readLine() return Integer.parseInt(line) } catch (e: NumberFormatException) { return null } finally { reader.close() } } fun main(args: Array) { val reader = BufferedReader(StringReader("239")) println(readNumber(reader)) } tr.. 2020. 1. 28.
[Kotlin] 코틀린의 기초#3 iteration, for, while, in 출처 - https://tourspace.tistory.com/100?category=797357 2.4 while과 for 코틀린은 for-each에 해당하는 형태만 존재 합니다. 따라서 for in 형태로 사용됩니다. while과 do-while문은 기존 java와 사용법이 같습니다. 따라서 형태가 좀 다른 for문을 보도록 하겠습니다. 2.4.2 Number iteration 기존 자바에서 for문을 쓰는 가장 기본적인 문법은 초기값, 증가값, 반복조건 입니다. 코틀린에서는 이런값 대신에 range를 사용합니다. fun fizzBuzz(i: Int) = when { i % 15 == 0 -> "FizzBuzz " i % 3 == 0 -> "Fizz " i % 5 == 0 -> "Buzz " else.. 2020. 1. 28.
[Kotlin] 코틀린 기초 #2 enum, when 출처 - https://tourspace.tistory.com/99?category=797357 2.3 enum 과 when 2.3.1 enum enum은 아래와 같이 사용합니다. enum class Color { RED, ORANGE, YELLOW, GREEN, BLUE, INDIGO, VIOLET } 물론 이건 기본적인 형태이지만, 흔히 java에서 사용할때 enum값 내부에 멤버변수를 설정하기도 합니다. enum class Color(val r: Int, val g: Int, val b: Int) { RED(255, 0, 0), ORANGE(255, 165, 0), YELLOW(255, 255, 0), GREEN(0, 255, 0), BLUE(0, 0, 255), INDIGO(75, 0, 130),.. 2020. 1. 28.
[Kotlin] 코틀린의 기초#1 - 함수,변수,클래스,property 출처 - https://tourspace.tistory.com/64?category=797357 2.1 기본요소: 함수, 변수 2.1.1 Hello world 코틀린을 시작했으니, Hello, world를 찍어보겠습니다. fun main(args: Array) { println("Hello, world!") } fun: 함수임을 나타내는 키워드 입니다. main: 함수 이름이겠죠? (args: Array): 함수인자를 표기할때 "변수명: 타입" 순서로 씁니다. 여기서 제너릭은 자바와 같습니다. println("Hello, world!"): System.out.println을 println으로 간단하게 사용할 수 있습니다. 이는 표준 자바 라이브러리 함수를 간소화해주는 wrapper를 제공하기 때문입니다... 2020. 1. 28.
[Kotlin] 코틀린이란? 출처 - https://tourspace.tistory.com/61?category=797357 이 글은 Kotlin In Action을 참고 하였습니다. 더욱 자세한 설명이나 예제는 직접 책을 구매하여 확인 하시기 바랍니다 1.2 코틀린의 주요 특성 코틀린은 자바가 실행되는 환경에서 자바를 대체할 수 있도록 개발된 언어입니다. 코틀린이 어디서 사용될수 있는지 알아보겠습니다. 서버상의 코드 (특히 웹 어플리케이션의 백엔드) 안드로이드의 어플리케이션 사실 이 이외에도 다른 환경에서도 잘 동작합니다. 예를 들어 인텔의 멀티엔진을 이용해서 iOS에서도 실행 가능하며, 토네이토FX & 자바 FX를 이용하여 데스크탑 어플리케이션 개발도 가능합니다. 추가적으로 자바스크립트도 코틀린을 컴파일 할 수 있습니다. 1.2.. 2020. 1. 28.