전체 글 179

[프로그래머스_Kotlin] 대충 만든 자판

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 휴대폰의 자판은 컴퓨터 키보드 자판과는 다르게 하나의 키에 여러 개의 문자가 할당될 수 있습니다. 키 하나에 여러 문자가 할당된 경우, 동일한 키를 연속해서 빠르게 누르면 할당된 순서대로 문자가 바뀝니다. 예를 들어, 1번 키에 "A", "B", "C" 순서대로 문자가 할당되어 있다면 1번 키를 한 번 누르면 "A", 두 번 누르면 "B", 세 번 누르면 "C"가 되는 식입니다. 같은 규칙을 적용해 아무렇게나 만든 휴대폰 자판이 있습니다. 이 휴대폰 자판은 키의 개수가 1개부터 최대 100개까지 있을 수..

프로그래머스 2024.03.08

Scope Functions (영역함수)

fun main() { //run Student().run { number = "1234" name = "run1" printInfo() //1234 run1 } val res = Student().run { number = "4567" name = "run2" "$number $name" } println(res) //4567 run2 //let // it을 거쳐서 프로퍼티를 호출할 수 있다. Student().let { it.number = "012" it.name = "let" it.printInfo() //012 let } //with // run과 유사하게 it을 거치지 않고 바로 변수를 호출할 수 있다. // 그러나 with함수의 인자로 클래스 객체를 받는다. with(Student()){ n..

Kotlin/문법 2024.03.07

TIL (03.06)

코드카타 62번,63번 복습 알게된 것 distinct : 중복원소 제거 repeat : 어떤 문자열을 주어진 횟수만큼 반복 println("A".repeat(5)) //AAAAA repeat(5){ print("B")} //BBBBB 강의 4 abstract class : 그 자체로 인스턴스화 될 수 없는 클래스이다. abstract class를 여러 클래스에서 공통으로 쓰는 프로퍼티와 메서드를 모아놓는 용도로 사용한다. 인스턴스화? 객체를 만드는 작업 init : 초기화 블록을 시작한다. 초기화 블록에는 클래스의 객체가 만들어질때 (인스턴스화 될때) 실행될 초기화 코드가 들어간다. (클래스) 상속? -공통적인 요소가 있다면 부모/자식 클래스를 구분해서 상속관계를 만들 수 있다. -생략된 final 키..

Kotlin/TIL 2024.03.06

TIL (03.05)

강의 3-5까지 들음 팀 프로젝트 이후 Kotlin 기초부터 탄탄하게 가고 싶어서 열심히 들었다. 코틀린의 기초부터 강의를 진행하였다. 정리는 내가 필요한 내용만 했다. 정리 객체지향 프로그래밍(Object Oriented Programming) 5대 키워드 [ 클래스, 추상화, 캡슐화, 상속, 다형성 ] 데이터 클래스 실드 클래스 클래스 클래스에는 정보(프로퍼티)와 행위(메소드)를 작성한다. 보통 하나의 파일은 한개의 클래스를 의미하지만, 하나의 파일안에 여러개의 클래스가 존재할 수도 있다. 특별한 클래스(data class, sealed class, object class) 생성자의 활용 - 기본 생성자, 명시적 생성자 - 명시적생성자는 주 생성자, 부 생성자로 구분 주 생성자는 클래스 헤더에 위치하..

Kotlin/TIL 2024.03.05

Android - FragmentContainerView와 BottomNavigation item으로 fragment넘기기

탐색 | Jetpack | Android Developers developer.android.com 위에 공식문서에서 버전 참고 //navigation implementation("androidx.navigation:navigation-fragment-ktx:2.7.7") implementation("androidx.navigation:navigation-ui-ktx:2.7.7") 공식문서를 통해 기본을 잡아준다. 앗 참고로 res -> navigation폴더 생성 -> nav_graph 생성까지 해준다. 이제 bottomNavigation을 생성해줘야한다. 내가 만들려는 것은 메인화면을 제외하고 fragment로 로그인화면과 홈화면 두개가 필요해서 생성해줬다. 이런식으로 두개를 만들어준 뒤 새로 생성했..

Android Studio 2024.03.05

TIL (03.04)

CodeKata [프로그래머스 - Kotlin] 문자열 나누기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 문 rlawog.tistory.com Kotlin 문법 [ find, override, 스프레드 연산자, 중위 호출, 경로 파싱하기 (substring 사용, 정규식 사용) fun main() { //elementAt()을 사용하여 collection의 특정 위치의 element를 얻는다. val numbers = listOf(1, 2, 3, 4) println(numbers.find { it % 2 == 0 }) println(numbers..

Kotlin/TIL 2024.03.04