본문 바로가기
반응형

Programming Language/Kotlin11

[Kotlin] 인터페이스 깊게 이해하기 실제 자주 사용되는 패턴을 통해 여러 usecase를 익혀보자.import java.time.Instant// Task 인터페이스interface Task { val taskId: String val taskName: String val createdAt: Instant val dueAt: Instant val assignees: List fun startTask() // 서브인터페이스: Task의 가변 기능 추가 interface Mutable { fun updateTaskDetails(newName: String, newDueAt: Instant) } // 서브인터페이스: Task를 상속하며 기능을 제한 interface Read.. 2024. 9. 7.
[코틀린 Kotlin] 시계열 데이터 입력받아 다양한 형식의 시간 데이터 만들기 이글은 제가 배운 것을 정리하는 글입니다. val curTime = SimpleDateFormat("a h:mm", Locale("ko", "KR")).format(curDate) 시계열 데이터를 입력받아 원하는 형식으로 바꾸기 위해 SimpleDateFormate 클래스를 사용한다. 인자로 바꿀 형식, 지역 정보를 입력할 수 있다. 위의 코드는 "a h:mm"이라고 입력하였는데 "오후 1:25분"과 같은 형식으로 변환된다. 대문자 H를 쓸경우 "오후 13:25분"이 된다. "a HH:mm"은 "오후 04:30분"과 같이 표시된다. 뿐만아니라 "yyyy-MM-dd" 등 여러가지 포맷을 적용시킬 수 있다. 자유롭게 형식을 커스텀 할 수도 있다. 2021. 7. 16.
[코틀린 Kotlin] arrayOf, Array를 이용한 배열 선언 및 변경, 여러가지 메소드 활용 1. 배열 선언 배열 선언은 크게 arrayOf와 Array 두 가지가 존재한다. 둘의 차이점이라면 arrayOf는 선언과 동시에 개별 원소 값을 지정해줄 수 있지만 Array는 개별 원소값을 지정할 수 없다. 대신 Array는 람다식을 활용할 수 있다. 개별 원소를 각각 설정하기엔 arrayOf가 훨씬 자유로운 느낌이다. import java.util.* fun main() { val names = arrayOf("홍길동1", "홍길동2", "홍길동3", 1, 2, 3) //arrayOf를 통한 배열 선언 val names2 = arrayOf("홍길동1", "홍길동2", "홍길동3") // 특정 자료형 지정 가능 val names3 = arrayOfNulls(3) //널 배열 선언. 자료형 타입이나 사.. 2021. 7. 7.
[코틀린 Kotlin] 클래스 정의 및 생성자 호출 코틀린은 클래스를 정의할 때 동시에 생성자를 만들도록 할 수 있다. 다음 코드를 보자. class Person(var name:String){ } fun main() { var person1 = Person("Lee") println("person1의 이름은: ${person1.name}") } >> 출력 >> person1의 이름은: Lee 자바와는 다르게 코틀린은 클래스를 작성할 때 함수처럼 인자를 받을 수 있다. 위와 같이 클래스 객체 생성 시에 "Lee"라는 인자를 바로 넘겨주면 자동으로 생성자가 만들어지기 때문에 person1.name을 출력해보면 "Lee"가 할당되었음을 알 수 있다. 참고: init은 클래스 생성시 자동으로 실행되는 함수다. class Person(var name:String.. 2021. 7. 5.
[코틀린 Kotlin] 코틀린의 조건문, 반복문 (if, for, when, for문 예제 및 사용법) - 조건문 val a = 10 val b = 20 var max:Int if(a>b){ max = a }else{ max = b } // 조건문 if의 축약형 max = if(a>b) a else b // when 사용법 when(max){ 10 ->{ println("결과는 10") } 20 ->{ println("결과는 20") } else ->{ println("결과는 ?") } } // when 사용법2 when(max){ 10, 20 ->{ //10 또는 20을 의미 println("결과는 10 또는 20") } else ->{ println("결과는 ?") } } // when 사용법3 : 10..20은 10~20까지의 범위를 의미 when(max){ in 10..20 ->{ println(".. 2021. 7. 5.
[코틀린 Kotlin] 함수 사용법 함수의 축약 fun add(a:Int, b:Int):Int = a + b // 함수의 축약, 소괄호 안 명령이 1줄일때 return값을 =로 받을 수 있음 input의 개수가 정해지지 않은 함수 fun sum(vararg inputs:Int):Int{ var output = 0 for ( num in inputs){ output = output + num } return output } fun(10,20,30) 2021. 7. 4.
반응형