일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- kotlin
- 라즈베리파이 피코
- 카이캐드
- Arduoin
- 코틀린
- 아두이노
- 유클리드 호제법
- 우송대
- PICO4
- 재정의함수
- GCD
- ESP32_S2
- 약수 구하기
- 안드로이드스튜디오
- 개발 보드
- 카이캐드 설치
- string함수
- 우송대 라즈베리파이 피코
- androidstudio
- 아두이노 모터 드라이버
- ATmega328p
- 우송대학교
- L293D
- 업캐스팅
- KiCad
- 7세그먼트
- ESP32_S2_WROVER
- 추상화함수
- 카이캐드 다운로드
- 자료구조
- Today
- Total
목록코틀린 (9)
개발자의 생활
약수: 어떤 수를 나누어 떨어지게 하는 수예1) 8의 약수 -> 1, 2, 4, 8예2) 12의 약수 -> 1, 2, 3, 4, 6, 12 1. Brute Force(완전탐색)1 ~ n 까지 모든 수를 n 과 나눠보면서 판별합니다.(방식1)val n = 12val divisors: MutableList = mutableListOf()for (i in 1..n){ if(n % i == 0){ divisors.add(i) }}println(divisors.joinToString(", ")) (방식2)val n = 12val divisors = (1..n).filter { n % it == 0 }println(divisors.joinToString(", ")) 시간 복잡도: O(n) 2..
이번에는 문자열을 다루면서 편리한 함수를 알아보겠습니다. 1. 문자열 길이 구하기val str = "Kotlin.Program"println(str.length)length는 함수가 아닌 속성으로 단순히 문자열 길이를 알 수 있습니다. 2. 대소문자 변환val str = "Kotlin.Program"println(str.lowercase())println(str.uppercase())lowercase는 문자열을 모두 소문자로 바꿔주고uppercase는 문자열을 모두 대문자로 바꿔줍니다. 3. 문자열 나누기val str = "Kotlin.Program"val listStr = str.split(".")println("0번째: ${listStr[0]} 1번째: ${listStr[1]}")split 함수는 특..
제네릭은 코드를 작성하면서 다양한 데이터타입의 안정성을 높여주기 위해 만들어진 개념 입니다.간단하게 어떤 데이터 타입이 들어오더라고 해당 타입으로 지정이 되는 익명 타입 이라고 보면 될거 같습니다. 사실 저의는 배열을 사용하면서 이미 제네릭을 사용하였습니다.ArrayArrayArrayArray 이렇게 Array> 꺾쇠 내부에 생성하고자 하는 배열의 데이터 타입을 넣어서 해당 타입의 배열을 만들어 사용하였습니다. 이번에는 직접 제네릭을 사용하는 방법을 알아보고 제네릭 클래스를 만들어 보겠습니다.class GenericClass (val dataA: T)제네릭 클래스는 클래스 명 뒤에 를 열고 안에 타입 명을 넣어주시면 됩니다. 이 부분에는 데이터 타입명이 들어가는 자리이지만 코드를 작성하는 시점에서는 타입..
이전에 클래스 상속에 대해 알아보았는데요 이번에는 상속을 통해 다형성을 구현할 수 있습니다.다형성이란 여러 다양한 기능을 가진 객체 라고 설명할 수 있습니다. 예를들어 저의가 결제 시스템을 만든다고 했을때 결제하는 기능을 가진 클래스를 하나 만들어야 하죠 하지만 결제 방식은 삼성페이, 애플페이, 구글페이 등 같은 결제시스템 안에 다양한 방식의 결제기능을 구현해야 합니다.만약 각각 결제방식마다 구분해서 다양한 클래스로 만들면 추후에 새로운 결제시스템을 추가하거나 수정하는등의 유지보수를 하기 힘들어 질겁니다. 다형성은 이러한 문제를 해결할 수 있게 합니다. 다양한 결제시스템을 구현한 클래스를 하나의 클래스로 연결해서 관리하면 유지보수에 용이합니다. 다형성을 활용한 코드 예시fun main() { val..
Classclass는 속성과 함수로 이루어져 있습니다. 지금까지 사용했던 변수들도 모두 클래스로 이루어진 것이죠이번에는 클래스를 직접 만들고 사용해 보겠습니다. 사용법은 함수와 비슷합니다.class People(val name: String, val age: Int)함수를 만들 때는 fun 을 사용한것처럼 클래스를 만들때는 class 키워드를 사용하시면 됩니다.다음으로 클래스 이름을 작성하시면 되는데 함수와의 차이점은 이름 첫 글자가 함수는 소문자로 작성해야 했지만 클래스는 대문자로 시작해야 합니다.그리고 소괄호 내부에 속성을 적으시면 됩니다. 여기서도 함수와의 차이점은 함수는 변수키워드를 작성하지 않고 기본으로 val로 선언이 되었지만 클래스는 직접 정의할 수 있습니다. 변수명을 짓는 것과 동일하게 하..
이번에는 프로그래밍에서 빠지면 안 되는 필수적인 존재 조건문, 반복문 그리고 연산자에 대해 알아보겠습니다. 1. 조건문코틀린에서 조건문에는 if와 when 이 있습니다. 1. if문코틀린에사 if 조건문은 다른 언어와 사용법이 비슷하지만 추가적인 기능이 있습니다.fun main() { if(false){ println("참") }else{ println("거짓") } if(false){ println("1") }else if(false){ println("2") }else{ println("3") }}일반적인 다른 언어와 동일하게 사용이 가능합니다.하지만 코틀린에서는 추가적인 기능이 있습니다. 재미있게도 ..