728x90
반응형

2023/07 9

list int kotlin

kotlin에서 list를 만들 때는 listOf 함수를 사용한다. listOf로 만들어진 list는 기본적으로 immutable 객체이다. mutable로 생성하려면 mutalbeListOf을 사용하면 된다. mutable list를 변할 수 없는 val 변수에 담으면 어떻게 될까? fun listTest() { val list1 = mutableListOf('A') list1 += 'A' list1.plusAssign('A') println(list1) val list2 = listOf('B') // list2 += 'B' // list2 = list2 + 'B' println(list2) var list3 = listOf('C') list3 += 'C' val newList = list3 + 'C'..

Develop!/Kotlin 2023.07.31

생성자 in kotlin

Kotlin에서 생성자는 Class의 이름과 소괄호만 적어 주면 된다. Java 처럼 new를 적지 않아도 된다. class Wombat { } fun main() { val wombat = Wombat() } 생성자에 파라미터를 전달할 수도 있다. class Alien(name: String) { val greeting = "Poot $name" } fun main() { val alien = Alien("Mr. Meeseeks") println(alien.greeting) } 파라미터 name은 생성자 밖에서는 접근할 수 없다. 생성자 밖에서도 접근이 가능하려면 var or val을 붙여주면 된다. class MutableNameAlien(var name: String) { fun printName(..

Develop!/Kotlin 2023.07.27

'in' in kotlin

제목이 이상하다. 코틀리에서 사용하는 in 키워드에 대해 말 하다 보니 이렇게 될 수 밖에 없다. in은 해당 값이 범위 안에 있느지 체크할 때 사용한다. fun booleanIn() { val percent = 35 println(percent in 1..100) } 해당 값이 있으면 true, 없으면 false를 반환한다. 1 ~ 100 사이에 값이 있으니 위의 메소드의 실행 결과값은 true 이다. in 키워드는 값이 있는지 없는지 뿐 아니라 for iteration에서도 사용할 수 있다. fun iterationIn() { val values = 1..3 for (v in values) { println("iteration $v") } val v = 2 if (v in values) { print..

Develop!/Kotlin 2023.07.26

for loop in kotlin

for loop문은 특정 범위의 내용을 순회 하면서 내용을 처리할 때 자주 쓴다. Kotlin에서 for 문은 아래와 같이 사용한다. fun main() { for (i in 1..3) { println("Hey $i!") } } 특정 범위를 나타낼 때 두 개의 값을 사용해서 정의할 수 있다. 범위를 나타내는 방법은 '..'를 사용하는 방법 말고 until을 사용할 수도 있다. fun range() { val range1 = 1..10 val range2 = 0 until 10 println(range1) println(range2) } '..'는 시작과 끝을 포함하지만 until은 끝은 포함하지 않게 된다. until은 실수에 대해서는 사용할 수 없다. 간격은 step 을 사용할 수 있다. 다음 예제를..

Develop!/Kotlin 2023.07.21

String Template in Kotlin

Template처럼 문자열을 다룰 수 있다. fun stringTemplate() { val answer = 42 println("Found $answer!") println("printing a $1") } 이 내용을 실행하면 아래와 같은 결과가 나온다. 값이 있는 $answer는 해석해서 나오지만 아무런 값이 할당되지 않은 $1 같은 경우에는 문자 그대로 나온다. 문자열을 이어 붙일 경우에는 '+'를 이용한다. fun stringConcat() { val s = "hi\n" val n = 11 val d = 3.14 println("first : " + s + "second : " + n + ", third : " + d) } 실행 결과는 아래와 같다. $를 사용할 때 중괄호와 같이 사용하면 내용을 ..

Develop!/Kotlin 2023.07.19

함수 in Kotlin

함수는 학교 수학 시간에 배우는 것 처럼 무엇인가 내부적으로 로직을 처리하는 것을 말한다. Kotlin에서도 함수를 사용할 수 있다. 아래와 같은 코드를 보고 하나씩 분석해 보자 fun main() { val r = multiplyByTwo(5) println(r) println(multiplyByThree(5)) println(multiplyByFour(5)) sayHello() sayGoodBye() } fun multiplyByTwo(i: Int): Int { println("Inside multiplyByTwo") return i * 2 } fun multiplyByThree(i: Int): Int = i * 3 fun multiplyByFour(i: Int) = i * 4 fun sayHello..

Develop!/Kotlin 2023.07.14

Data Type in Kotlin

코틀린에서는 데이터 타입을 명시해서 사용할 수도 있고, 그냥 Javascript나 PHP에서처럼 정의하지 않고 사용할 수 도 있다. 바로 아래와 같이... fun main() { val n = 1 var p = 1.2 val m: Int = 1 var q: Double = 1.2 val r = n + p println(r) } 이렇게 작성하게 되면 n은 Int(정수), p는 Double(소수)가 된다. Java에서는 정수를 int 또는 Integer라고 하고 소수는 float Float double Double등으로 다양하게 쓰이지만 kotlin에서는 단 두 가지만 쓰이나 보다. 스크립트 언어에서 타입을 추론해서 변수의 타입을 정하게 되는데 그런 느낌으로 만든 듯 싶다. 다만 명시적으로 타입을 정의해 줄..

Develop!/Kotlin 2023.07.14

var and val

책에서는 mutable, immutable 이라고 이야기 하지만, 우리가 보통 이야기하는 변수 또는 상수의 개념으로 보인다. var가 variable의 약자로서 변수이고, val은 value의 약자로 상수가 되는 것 같다. 기본적인 코드를 다음과 같이 작성해 본다. fun main() { var whole = 11 var fractional = 1.4 var words = "Twas Brilling" println(whole) println(fractional) println(words) } var는 변수이기에 재 할당이 가능하다. 재할당이 가능한지는 아래와 같이 해 보면 바로 알 수 있다. fun main() { var sum = 1 println(sum) sum += 3 println(sum) } 결..

Develop!/Kotlin 2023.07.13

Hello World for Kotlin

코린이라서 https://product.kyobobook.co.kr/detail/S000201206714 책을 스터디 하는 김에 하나씩 정리해서 남겨 본다. 우선 시작이니 당근 HelloWorld 부터... fun main() { println("Hello World") } 시작부터 헤맸다. 너무나도 쉬운 Hello World이지만... 위와 같이 코딩하지 않고 아래와 같이 했기 때문이다. class AtomicKotlin_01_03 { fun main() { println("Hello World") } } Class 안에 main이 당연히 존재해야 한다고 생각 했는데 그게 아니였다. 너무 Java에 익숙해졌나 보다. main method가 Class 밖에 있어야 아래 처럼 실행 버튼이 생긴다. 실행하면..

Develop!/Kotlin 2023.07.13
728x90
반응형