목록Dev/Kotlin (11)
Learn & Record
1. 컬렉션 - 자바에서도 리스트 List, 셋 Set, 맵 Map 등 여러 자료 구조를 사용 - 코틀린에서도 이러한 컬렉션을 모두 사용할 수 있을 뿐만 아니라 몇 가지 편리한 함수를 추가로 제공 - 또한 코틀린은 컬렉션을 읽기전용 immutabel 컬렉션과 읽기-쓰기 mutable 컬렉션으로 크게 두 가지로 나눔 fun main() { /* 1. 리스트 리스트 List는 저장되는 데이터에 1) 인덱스를 부여한 컬렉션이며 2) 중복된 값을 입력할 수 있음 코틀린에서 동적으로 리스트를 사용하기 위해서는 리스트 자료형 앞에 뮤터블 Mutable 이라는 접두어 prefix가 붙음 접두어가 있는 리스트도 있지만 잘 사용하지 않기 때문에 항상 mutableList, mutableMap, mutableSet을 사용..
1. 함수 - 함수는 fun으로 정의하고 반환값이 있는 함수는 내부에서 return으로 값을 반환 - 함수를 정의할 때 입력값을 기술한 것을 '파라미터' - 함수의 정의 - 함수는 fun 키워드로 정의하며 값을 입력받아 사용할 수 있는데, 이때 입력될 값을 기술하는 것을 파라미터라고함 fun 함수이름 (파라미터 이름 : 타입) : 반환타입 { return 값 } - 함수의 괄호 안에 입력되는 '파라미터 이름 : 타입'에 따라, 함수를 호출할 때 괄호 안에 값을 넣어서 전달하는데 - 이 때 입력되는 값의 타입은 함수에 정의된 파라미터 타입과 동일하게 입력해야 함 - 1) 반환값과 입력값이 있는 함수의 정의 - Int 타입의 x라는 입력 파라미터를 갖는 함수 square()를 정의 fun square(x:I..
1.별 출력 fun main() { for(i in 1..4){ for (k in 1..i) { print('*') } println() } } //* //** //*** //**** 2. while 반복문 - for문의 특정 범위만큼 반복하기 위한 구문이라면, while 문은 특정 조건이 만족할 때까지 반복하기 ㅜ이한 구문 fun main() { // current 변수가 인덱스의 역할 var current = 1 val until = 12 while (current < until) { println("현재 값은 ${current}입니다.") current++ } } /* 현재 값은 1입니다. 현재 값은 2입니다. 현재 값은 3입니다. 현재 값은 4입니다. 현재 값은 5입니다. 현재 값은 6입니다. 현..
1. 묵시적 변환 - Any형은 자료형이 특별히 정해지지 않은 경우에 사용 - 코틀린의 Any형은 모든 클래스의 뿌리. Int나 String 그리고 사용자가 직접 만든 클래스까지 모두 Any형의 자식 클래스 - 즉 코틀린의 모든 클래스는 바로 이 Any형이라는 슈퍼클래스 (Superclass)를 가짐 - * Any는 자바의 최상위 클래스인 Objcet와 비슷하지만 서로 다른 유형 - Any형은 무엇이든 될 수 있기 때문에 언제든 필요한 자료형으로 자동변환 할 수 있음 - 이것을 묵시적 변환이라고 함 fun main() { var a: Any = 1 // Any형 a는 1로 초기화될 때 Int형이 됨 a = "one" // Int형이었던 a는 변경된 값에 의해 String이 됨 println("a: $a ..

1. 프로젝트 생성 - 코틀린 프로젝트 (JDK 17) 생성 - 패키지 생성 후 > 코틀린 파일 생성 2. 코틀린 - Kotlin 코틀린은 2017년 안드로이드 공식 개발 언어로 지정 - 안드로이드의 개발 환경은 Java 언어를 중심으로 확장되어 왔는데, 새로운 개발 언어들 도입함 - 구글이 코틀린을 안드로이드 공식 언어로 지정한 이유는 코틀린이 현대적인 언어로서 갖는 장점들 때문 - 코틀린의 장점 - 코틀린은 자바와 100% 상호 호환되면서도 더 현대적이고 간결. 때문에 자바와 코틀린 코드를 같이 사용가능 - 코틀린은 Null Pointer Exception이 발생할 수 있는 코드를 금지하고 Null에 대해 안전한 코드를 간결하게 표현 지원 - 코틀린은 '타입추론'을 지원. 때문에 저적 타입 지정 언어..