4개의 글로 커니의 코틀린 2장, 3장 정리를 모두 마쳤다 오늘은 커니의 코틀린 4장 내용인, 개발을 할 때 유용하게 사용할 수 있는 코틀린 표준 라이브러리를 정리해보려고 한다! 조건 확인 함수 특정 값의 일치 여부 확인 : check, require check(), require() : 함수 혹은 생성자의 인자로 받은 표현식이 참이 아닌 경우 예외를 발생시키는 함수 //인자로 받은 value 값이 참이 아니라면 IllegalStateException 발생 fun check(value: Boolean) //인자로 받은 value 값이 참이 아니라면 IllegalArgumentException 발생 fun require(value: Boolean) //인자로 받은 value 값이 참이 아니라면 Illega..
안드(로이드 얼리)버디가 벌써 두번째 스터디를 마쳤다 각자 블로그에 글을 쓰면서 공부를 해오고 만나서는 서로 퀴즈를 내고 맞추면서 복습하는데 난 대충 넘어갔던 부분들까지 퀴즈를 맞추면서 다시 공부할 수 있어서 정말 좋은 것 같다>.=5 //getter를 커스텀으로 지정, boolean값을 반환 var address: String? = null //null로 초기화 set(value){ //value는 인자로 들어올 새로 지정될 주소값을 가지고 있음 field = value?.substring(0..9) //field는 address 프로퍼티 } } //사용 예시 val family: Family = Family(5, "kim") println("isBig: ${family.isBig}") //true 출..
함수 명명된 인자 : 매개변수의 이름과 함께 인자를 대입 //원을 그리는 함수 fun drawCircle(x: Int, y: Int, radius: Int) {...} //명명된 인자를 사용해 함수 호출 drawCircle(x=10, y=5, radius=25) drawCircle(10, 5, radius=25) 기본 매개변수 : 함수의 매개변수에 기본값 지정 가능 //반지름의 기본값을 25로 갖는 함수 fun drawCircle(x: Int, y: Int, radius: Int = 25) {...} //반지름을 지정하지 않았으므로 원의 반지름은 25 drawCircle(10, 5) 단일 표현식 표기 : Unit 타입을 제외한 타입을 반환하는 함수라면, 메소드 내용을 중괄호로 감싸지 않고 함수 정의 가능..
함수 값을 반환하지 않는 함수는 Unit타입을 반환하며 생략 가능 (Java의 void와 같음) class Foo{ fun foo(): Unit{ //반환값이 없는 함수, Unit 생략 가능 //함수 구현 } fun bar(): Int{ //정수형을 반환하는 함수 return 0 } } 상속 및 인터페이스 구현 코틀린에서는 상속과 구현 상관없이 세미콜론(:) 뒤에 부모 클래스와 인터페이스를 표기 클래스를 상속받는 경우 반드시 부모 클래스의 생성자를 호출해야함 상속받거나 구현한 함수의 앞에 반드시 override 키워드를 붙혀야함 class MainActivity: AppCompatActivity(), View.OnClickListener{ //부모 클래스의 생성자 호출 //AppCompatActivity..
클래스 클래스 선언 및 인스턴스 생성 //클래스 선언 class Person{ } //인자가 없는 생성자로 인스턴스 생성 val yejin:Person = Person() //인자가 1개인 생성자로 인스턴스 생성 val yejin:Person = Person(24) 인터페이스 구현부가 없는 추상 함수들은 상속받은 클래스에서 반드시 오버라이딩 -> 빈 중괄호도 구현부이므로 추상함수가 아니다‼️ 초기화되지 않은 변수 역시 상속받은 클래스에서 반드시 재정의 인터페이스 내에서 함수 구현 가능 여러개의 인터페이스 다중 상속 가능 인터페이스 간의 상속도 가능 object: [인터페이스 이름] 형태로 인스턴스 생성 -> 인스턴스에는 생성자가 없으므로 괄호를 쓰면 안된다‼️ //인터페이스 선언 interface Per..
요즘 갑자기 생각도 안해봤던 등산이 가고 싶었다 그래서 친구들한테 제발 가달라고 했는데 역시 내 친구들이라 그런지 다 거절당했었다 그러다가 지난주에 아주 갑자기 아차산에 가게 되었다 고등학교 수련회 때 강제로 가게 했던 등산 이후로 처음이였다 올라가다가 가족들이랑 친구들을 생각하며 돌탑도 쌓았다 낮에만 해도 비가 왔는데 올라갈수록 날씨가 좋아져서 아주아주 행복했다 생각해보니 하늘을 이렇게 많이 올려다본적이 최근들어 오랜만인 것 같다 그리고 어제는 또 갑자기 인왕산에 가게 되었다 왜 등산을 자꾸 갑자기 하는거지? 어제는 날씨가 더 더 좋았다 그래서 기분도 아주 좋았다 근데 등산이 아차산보다 훨씬 힘들었다 그래도 쉬다가 떠들다가 먹다가 힘들어하다가 정상에 도착했다 힘들게 올라간만큼 뿌듯하다 꼭 그림처럼 저렇..
우리 App-jam팀 얼리버디의 안드로이드 팀원들과 공부를 시작하기로 했다 '커니의 코틀린'을 기반으로 kotlin과 아키텍쳐 공부를 해서 얼리버디 프로젝트 코드를 멋지게 바꾸는 것이 우리의 목표다! 안드버디 화이티잉 변수 val : value의 약어, 값을 초기화 한 후에는 변경이 불가능 var : variable의 약어, 값을 선언한 후에도 변경 가능, 타입이 다른 값으로는 변경 불가 배열 🚨생성 후 크기 변경 불가🚨 arrayOf(값1, 값2, 값3) Array(배열크기,{초기화값}) array.set(인덱스, 값) : 배열에 값 넣기 array.get(인덱스) : 배열에서 값 빼기 컬렉션 데이터를 저장하는 기본 자료구조들을 모아 관리와 사용을 편리하게 해주는 프레임워크 코틀린에서는 변경 가능한(m..