Kotlin
[Kotlin/Basic] 코틀린에서의 제어문
1. 코틀린에서의 if else fun validateScoreIsNotNegative(score : Int){ if(score !in 0..100){ throw IllegalArgumentException("${score}의 범위 이상") } } 자바에서의 if else문과 차이가 없다. 위에서 주의할 점은 자바에서는 if(score 100) 이렇게 표현했다면, 위의 코드처럼 0..100 이렇게 표현할 수 있다. 또 다른 예시를 살펴보자! fun getPassOrFail(score : Int) : String { return if(score > 50) { "P" }else{ "F" } } 여기서 자바하고와의 차이점을 발견할 수 있다. 자바에서 if~else는 Statement이지만, 코틀린에서는 Exp..
[Kotlin/Basic] 코틀린에서의 연산자
1. 연산자의 종류 자바에서 알고 있는 연산자는 단항연산자 : ++, -- 산술연산자 : +, -, *, /, % 산술대입연산자 : +=, -= 비교연산자 : > , money2){ println("1 > 2") } 이렇게 객체를 비교할 때 자주 사용하는 연산자로 사용하지만, 실제로 자동으로 compareTo를 호출해준다. 2. 비교연산자와 동등성, 동일성 자바에서는 동일성에 ==을 사용하고, 동등성에 equals..
[Kotlin/Basic] 코틀린에서의 Type
1. 변수의 타입 val number1 = 4 // val number2 : Long = number1 //Type mismatch //자바에서는 명시적으로 더 큰 타입으로 변경이 되었지만 코틀린에서는 안됨. //따라서 toLong() 을 붙여줘야함 val number2 : Long = number1.toLong() //자바에서는 암시적으로 가능했지만 //코틀린에서는 명시적으로 적어주어야함 println(number1 + number2) 자바에서는 Int와 Long을 더해주면 암시적으로 더 큰 타입으로 변경되어 연산이 가능했다. 하지만 코틀린에서는 불가능하다!! ㅠㅠ 따라서 위의 코드와 같이 Int와 Long을 더해주려면 .toLong을 붙여주어 number1를 Long타입으로 변경해주어야한다. 그럼 만..
[Kotlin/Basic] 들어가며, val/var 차이, 코틀린에서의 null
코틀린 문법 공부를 시작하며 약 1년 반동안 자바로 Spring 개발, 알고리즘 공부 뿐만 아니라 모든 프로젝트를 자바로 개발해왔다. 하지만 2022년도 1학기 TLOVER라는 앱을 개발하면서 안드로이드 공부를 시작했고, 코틀린이라는 언어로 TLOVER앱을 론칭했다. 코틀린에 대한 지식 없이 구글링으로만 개발을 해서 부족한 부분이 많았고, 객체지향인 점에서는 같지만 자바하고와의 차이점은 굉장했다. 자바에서의 10줄 넘는 코드가 코틀린에서는 단 3줄로 끝나는 경우도 있었다. 편리한 점이 굉장히 많았지만 익숙했던 자바의 코드때문에 헷갈리는 부분이 많아 제대로 활용하지 못했다. 따라서 인프런 최태현 강사님의 자바 개발자를 위한 코틀린 입문 이라는 강의를 듣고 내가 알고있던 자바하고와의 차이를 비교해가며 공부할..