Programming Languages(47)
-
[Kotlin] 3. 선택 표현과 처리: enum과 when
1. enum 클래스 enum class Color { RED, ORANGE, YELLOW, GREEN, BLUE, INDIGO, VIOLET } Java에서는 enum 키워드를 쓰지만 Kotlin에서는 enum class 키워드로 enum 클래스를 만든다. Kotlin에서 enum은 소프트 키워드(soft keyword)라고 부른다. 소프트 키워드는 특정 상황에서만 키워드로 사용되는 키워드로 그 상황이 아니라면 일반적인 상황에서 사용할 수 있다. ⚠️class는 키워드이다. 따라서 class라는 이름은 사용할 수 없으므로 clazz, aClass와 같이 사용해야 한다. Kotlin의 enum 또한 프로퍼티와 메서드를 정의할 수 있다. enum class Color ( val r: Int, val g: ..
2023.03.22 -
[Kotlin] 2. 클래스와 프로퍼티, 소스코드 구조
Java와 Kotlin의 클래스 비교 Java public class Person { private final String name; public Person(String name) { this.name = name; } public String getName() { return name; } } Kotlin class Person(val name: String) 1. 프로퍼티 프로퍼티(property)는 필드와 접근자(getter, setter)를 함께 부르는 말로 Kotlin은 이를 언어 차원에서 지원한다. 클래스에서 프로퍼티를 선언할 때는 val과 var를 사용한다. val은 읽기 전용이며 var는 변경 가능하다. class Person( val country: String, // 읽기 전용 프로퍼..
2023.03.21 -
[Kotlin] 1. 함수, 변수, 문자열 템플릿
함수 fun main(args: Array) { println("Hello World!!") } 함수는 위와 같이 fun 키워드를 사용하여 정의한다. fun 함수명([param: paramType): [returnType]) { [body] } 형식으로 작성한다. Kotlin에서는 함수를 최상위 수준에서 정의가 가능하다. Java는 반드시 클래스 내에 위치해야 한다. 💡Kotlin에서는 라인 구분을 위한 세미콜론을 사용하지 않는다! // 식이 본문인 함수 fun max(a: Int, b: Int): Int = if (a > b) a else b 위처럼 식이 본문인 함수를 선언할 수 있다. 파라미터는 "변수명: 타입" 으로 작성한다. 💡Kotlin에서는 if를 문(statement)이 아니라 식(expre..
2023.03.21 -
[Java] ArrayList의 capacity, size, 그리고 add(int index, E element)
문제 알고리즘 문제를 풀던 중 2차원 배열 형태를 ArrayList 형태로 구현하려고 했다. 코드는 다음과 같다. N = Integer.parseInt(br.readLine()); tree = new ArrayList(N + 1); ArrayList list = new ArrayList(N + 1); list.add(child, weight); tree.add(parent, list); 언뜻 봐서는 정상적으로 동작할 것 같지만 list.add() 에서 IndexOutOfBoundsException이 발생한다. 왜 예외가 발생하는 것일까? capacity와 size ArrayList는 내부적으로 capacity와 size라는 변수를 두고 있닫. 용도는 다음과 같다. capacity - ArrayList에 ..
2023.03.16 -
내가 보려고 만든 C++ 기본 문법 정리
컴파일러 담당 교수님께서 강의를 C++ 기반으로 진행한다고 하셔서 기본적인 C++ 문법을 정리한다. C++은 처음 써보는데 자바랑 C를 합쳐놓은 느낌이다. 기본 #include // 헤더 포함할 땐 #include using namespace std; // 네임스페이스 적용할땐 using namespace 이름 void printName(string name); // 함수 원형 선언 int main() { // 기본 자료형은 값이 할당되기 전에 쓰레기값이 들어있음 int i = 4; // 정수형 변수. short 없음 float f = 4.0; // 실수형 변수 double d = 4.0; // 실수형 변수 bool b = true; // 불린형 변수 string greeting = "Hello"; //..
2023.03.03 -
[Java] VSCODE에서 MAVEN 프로젝트에 MySQL JDBC 연동
JPA를 배우기 전에 간략하게 이런 게 있고 동작 방식, 여러 문제 때문에 JPA가 나오게 되었다는 것 정도만 알고 넘어가서 오랜만에 다시 복습할 겸 글을 작성한다. 주제에 앞서서 JDBC에 대해 간략히 소개하고 가도록 하자. JDBC JDBC(Java Database Connectivity)는 위키백과의 설명을 빌리자면 자바에서 데이터베이스에 접속할 수 있도록 하는 자바 API이다. JDBC를 사용하면 코드 상에서 DB에 접속한 다음 각종 쿼리를 사용할 수 있게 된다. JDBC의 실행 사이클 JDBC 드라이버를 메모리에 로딩한다. DB와 연결한다. DB에 쿼리를 수행한다. DB와의 연결을 종료한다. JDBC 드라이버 로딩 드라이버는 DB 벤더마다 다르다. 따라서 각 벤더의 홈페이지에서 다운로드해야 한다..
2021.12.11