전체 글 182

TIL (03.14)

CodeKata [프로그래머스_Kotlin] 성격 유형 검사하기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 나 rlawog.tistory.com 알게된 내용 map함수의 getOrDefault(key,defaultValue) map에서 key에 해당하는 value를 가져오는데 만약 해당 key가 map에 존재하지 않을 때 가져올 기본 값을 정할 수 있는 메서드이다. val map = mutableMapOf("a" to 1, "b" to 2) println(map.getOrDefault("a",0)) //1 format fun main(){ val..

Kotlin/TIL 2024.03.14

Kotlin - 입력 예외처리

입력에 대해 찾아보니 입력을 받기 위해 표준 라이브러리에서 제공하는 readLine()과 readln()이 있다. 사용했을때 차이점이 나타난다. 간단하게 보면 readLine()은 null값을 허용하는 String?타입으로 반환하지만 readln()은 non-null 타입이다. fun main(){ val name: String = readln() if (name.isEmpty()){ println("잘못된 입력") }else { println(name) } } if문 사용 숫자를 입력할 때까지 무한반복해서 입력받기 fun main() { while(true){ try{ var num1 = readln().toInt() println(num1) break }catch (e:NumberFormatExcep..

Kotlin 2024.03.14

Koltin - 날짜 시간 출력

LocalDateTime 현재 날짜/시간 가져오기 import java.time.LocalDate import java.time.LocalDateTime fun main(){ //현재 val dateAndTime: LocalDateTime = LocalDateTime.now() //2024-03-14T16:18:29.907092600 //날짜 val onlyDate : LocalDate = LocalDate.now() //2024-03-14 //특정 날짜 출력 val lastYear = LocalDate.of(2023,3,14) //2023-03-14 //시간도 마찬가지 //LocalDateTime.of(2023, 3, 14, 10, 10, 10) } DateTimeFormatter 이미 정의된 형식으로..

Kotlin/문법 2024.03.14

[프로그래머스_Kotlin] 성격 유형 검사하기

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 나만의 카카오 성격 유형 검사지를 만들려고 합니다. 성격 유형 검사는 다음과 같은 4개 지표로 성격 유형을 구분합니다. 성격은 각 지표에서 두 유형 중 하나로 결정됩니다. 지표 번호 성격 유형 1번 지표 라이언형(R), 튜브형(T) 2번 지표 콘형(C), 프로도형(F) 3번 지표 제이지형(J), 무지형(M) 4번 지표 어피치형(A), 네오형(N) 4개의 지표가 있으므로 성격 유형은 총 16(=2 x 2 x 2 x 2)가지가 나올 수 있습니다. 예를 들어, "RFMN"이나 "TCMA"와 같은 성격 유형이 ..

프로그래머스 2024.03.14

TIL (03.13)

Kotlin 문법 정리 data class copy() 메서드 코루틴 코루틴(Coroutine) ? 이론 처음 들었을 때는 Kotlin에서 만들고 사용되는 기술이라고 생각했었다. 하지만 1958년에 코루틴 용어가 만들어지고 어셈블리 프로그램에서 적용되었으며 다른 다양한 프로그래밍 언어에서 rlawog.tistory.com 이론적으로 이해가 좀 힘들었다,, 빨리 Android로 사용겸 실습을 해봐야 더 이해가 될 것 같다. 좋은건 알겠는ㄴ데 지금은 왜 사용되는지 모르겠는 느낌 ? 키오스크 과제 월요일부터 하루에 lv1씩 진행해서 오늘 lv3까지 진행했다. codekata 시간 안에 못푼 알고리즘이 생각이 난다... 오래걸릴줄알고 껐는데 생각보다(?) 금방 풀었다. Android 뿌시기 게시물 올리기 단계에..

Kotlin/TIL 2024.03.13

코루틴(Coroutine) ?

이론 처음 들었을 때는 Kotlin에서 만들고 사용되는 기술이라고 생각했었다. 하지만 1958년에 코루틴 용어가 만들어지고 어셈블리 프로그램에서 적용되었으며 다른 다양한 프로그래밍 언어에서 지원한다고한다. 찾아보면서 출력 시간 지연할 때 사용했었나 했지만 그건 스레드였다... 코루틴은 "실행의 지연과 재개를 허용함으로써, 비선점적 멀티태스킹을 위한 서브 루틴을 일반화한 컴퓨터 프로그램 구성요소" 라고 한다. 비선점적 ? 하나의 프로세스가 cpu를 할당받으면 종료되기 전까지 다른 프로레스를 강제로 차지할 수 없다. 루틴 ? 프로그래밍에서 루틴은 프로그램의 흐름을 추상적으로 일컫는 말이다. 프로그램은 메인 루틴과 서브 루틴으로 나뉜다. 예를 들어 main함수에 의해 수행되는 프로그램의 흐름을 메인 루틴이라고..

Kotlin/문법 2024.03.13

Kotlin - Pair, Triple

함수는 1개의 객체를 리턴한다. 과제를 진행하다가 2개 이상 리턴은 불가능한가 찾아보다가 알게되었다. Pair의 경우 2개의 값을 리턴하고 Triple의 경우 3개의 객체를 리턴할 수 있다. Pair 사용법 val pair1 = Pair("Hello", "World") val pair2 = Pair("Hello", 1234) val pair1 = Pair("hi", "hello") val pair2 = Pair("hi", 1234) val pair = Pair("hi", 1) System.out.println(pair.first) // hi System.out.println(pair.second) // 1 open fun select(): Pair { val pair = Pair("hi", 1) retu..

Kotlin/문법 2024.03.13