전체 글
-
23.1.17 Kotlin Setter&Getter개발 이야기/TIL 2023. 1. 17. 17:41
이어서 코틀린의 setter와 getter이다. 14일 글을 조금 더 자세히 적어보고자 한다(수정본..에 가깝다) Getter & Setter 기본형 1. Kotlin에서는 JAVA와 다르게 primal constructor에 대해 Getter와 Setter을 컴파일 시 생성해준다. public class Button { private int width; private int height; //constructor public Button(int width, int height){ this.width = width this.height = height } //getter public int getWidth(){ return width; } public int getHeight(){ return heigh..
-
Kotlin Data Class개발 이야기/TIL 2023. 1. 17. 15:46
코틀린의 Data Class는 일반적인 Class와 다르게 데이터를 다룰때 편한 class이다. 특징 코틀린에서 getter와 setter를 컴파일 타임에서 생성해주는 것처럼, data class는 컴파일 타임에서 equls(), hashCode(), toString(), copy(), componentN()를 생성해준다. 기본생성자를 1개 이상 가져야하고, val or var로 선언해야한다. 상속을 받을 수 없다(부모클래스에서 내부적으로 자동생성하는 함수들이 있는 경우 충돌이 날 수도 있다) equals() 내용이 같은지 판단하여, 값이 일치하면 true, 불일치시 false를 반환한다(type은 비교하지 않는다) fun main(){ val a = User(10,"진혁") println(a==User..
-
23.01.17 Kotlin Class와 생성자(init, constructor)개발 이야기/TIL 2023. 1. 17. 13:19
저번 글에서 썼던 부분 중 생성자에 관한 부분이 보강이 필요한 것 같아서 하나씩 나누어서 재작성하는 중이다. 참고 강의: https://www.udemy.com/course/best-android-12-kotlin Class vs instance vs object class는 기본적으로 청사진이라고 생각하면 된다. 이 표현이 어려우면 붕어빵틀이라고 생각하면 된다. 이 붕어빵 틀을 이용해서 우리는 실제 붕어빵, 객체(object)를 만들 수 있다. 또 그 안의 속재료를 변경할 수도 있다. 이 중 우리가 실제로 다루는 것, 사용하는 것들을 인스턴스라고 한다. //class class Boong(ing:String){ } //object, instance shoBoong = Boong("sho") phatBo..
-
23.01.14 Kotlin Class와 field개발 이야기/TIL 2023. 1. 14. 22:00
JAVA랑 Kotlin이랑 비슷하다고 했던거 같은데... 으음 공부하다보니 다른 부분들이 꽤나 많은 것 같다. 오늘은 Kotlin의 Class에 관해서 JAVA와 비교해서 이것저것을 정리해보려고 한다. 아래의 코드를 기반으로 설명을 시작해보자. //JAVA public class Button { private int width; private int height; //constructor public Button(int width, int height){ this.width = width this.height = height } //getter public int getWidth(){ return width; } public int getHeight(){ return height; } public voi..
-
23.01.13 Kotlin not null operator !!.개발 이야기/TIL 2023. 1. 13. 16:14
null과 자료형을 처리할 때 JAVA에서는 if 등의 조건문이나, error handling으로 이를 잡아주었다(자료형이 맞지 않는 경우에도 ) 코틀린에서는 이를 간단하게 null operator를 통해 해결하였다. https://kotlinlang.org/docs/null-safety.html 위의 문서는 kotlin의 null safety에 관한 공식문서이다. 아래와 같은 kotlin코드가 있다고 해보자. 보통 a라는 variable에 readLine으로 값을 사용자가 입력할 수 있는 형태이다. 이때 만약에 readLine에 해당하는 구문에 사용자가 null 값을 준다면? 에러가 발생할 것이다(toInt()로 바꿀수 없기에) fun main(args: Array) { var a = readLine(..
-
python 2중 배열 문제&행,열 다루기개발 이야기/알고리즘 및 코테 준비 2023. 1. 11. 14:45
#CodeUP 바둑알 십자 뒤집기 6096 https://codeup.kr/problem.php?id=6096 [기초-리스트] 바둑알 십자 뒤집기(py) python언어기초100제v1.0 : @컴퓨터과학사랑, 전국 정보(컴퓨터)교사 커뮤니티/연구회 - 학교 정보(컴퓨터)선생님들과 함께 수업/방과후학습/동아리활동 등을 통해 재미있게 배워보세요. - 모든 내용 codeup.kr lst = [[0 for j in range(19)] for i in range(19)] #j column, i row #get input for i in range(len(lst)): lst[i] = list(map(bool, map(int, input().split()))) n = int(input()) for i in range..
-
23.01.10 python list와 2차원 배열개발 이야기/TIL 2023. 1. 11. 14:08
#Python list python에서 list는 우리가 흔히 쓰는 배열과 다르게 크기가 정해져있지 않다. 수정, 삭제, 추가가 가능하며, []로 작성한다. 인덱스는 동일하게 0부터 시작한다. #List 선언 #단순하게 lst = [] #0으로 채워진 특정 크기의 lst 선언(list comprehension) lst = [0 for i in range(n)] #list comprehension 2중list lst = [[0 for j in range(n)] for i in range(m)] #위의 2중 배열의 경우 n*m size의 list반환 #List slicing과 추출 a = [1,2,3,4,5] a[0] = 1 a[1:3]= 2,3 #이상, 미만, 끝은 포함되지 않음 print(number[1..
-
23.01.06 python 다양한 진수(2진수, 8진수, 16진수) 표현하기개발 이야기/TIL 2023. 1. 6. 23:50
우리는 기본적으로 10진수 형태로 숫자를 표현한다. 하지만 컴퓨터는 2진수, 8진수, 16진수 등 다양한 진수를 사용할 때가 있다. 이때 대표적으로 Hexadecimal(16진수) 표현법은 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F를 사용한다. 이때 A부터 각각의 문자는 10, 11,12,13,14,15를 의미한다 다른 진수 형태로 숫자 표현하기 2진수는 binary, 8진수는 octal(그 화학할때 옥탈이다), 16진수(hecadeciamal)임으로 여기서 따와서 2진수는 0b, 8진수는 0o, 16진수는 0x로 시작한다. 아래의 예시로는 16진수를 변환하는 예시를 위주로 작성할 예정이다 #10진수를 16진수로 변환하기 10진수에서 다른 진수로 변환할 때 아래와 같은 내장함수를 이용한다...