
Safe Call null이 아니면 실행하고, null이면 실행하지 않는다.(그대로 null) str 변수에 "ABC"를 대입했지만, 실제로는 null이 들어갈 수도 있는 변수이기 때문에 str.length처럼 .으로 바로 호출할 수 없다. 이때 ?.(Safe Call)을 사용하면 호출이 가능해진다. ?.의 의미는 앞에 있는 변수가 null이 아니면 뒤의 함수나 프로퍼티 등을 실행시키고, null이면 값 그대로 null이 된다. 실제로 null이 들어갈 수 있는 변수를 ?.를 사용하지 않고, 실행해보면 Only safe (?.) or non-null asserted (!!.) calls are allowed on a nullable receiver of type String? 메시지가 출력된다. Elvi..

오류 처리 오류 코드보다 예외를 사용하라 오류를 코드로 처리하면 호출자 코드가 복잡해진다. 함수를 호출한 즉시 오류를 확인해야 하기 때문이다. 오류가 발생하면 예외를 던지는 편이 낫다. 호출자 코드가 더 깔끔해진다. public void sendShutDown(){ try{ tryToShutDown(); }catch(DeviceShutDownError e){ logger.log(e); } } 예외를 던지고 코드를 분리함으로써 각 개념을 독립적으로 살펴보고 이해할 수 있다. Try-Catch-Finally 문부터 작성하라 try-catch-finally 문에서 try 블록에 들어가는 코드를 실행하면 어느 시점에서든 실행이 중단된 후 catch 블록으로 넘어갈 수 있다. try 블록에서 무슨 일이 생기든지 ..
- Total
- Today
- Yesterday
- Algorithm
- 알고리즘
- 구현
- 백준
- 김영한
- 스프링 부트
- spring boot
- 인프런
- webflux
- 데이터베이스
- 코틀린
- 스프링부트
- 스프링
- 북클럽
- Real MySQL
- 파이썬
- 코테
- 노마드
- kotlin
- 릿코드
- MySQL
- 자료구조
- 문자열
- mysql 8.0
- 정렬
- Spring
- 노마드코더
- leetcode
- 리팩토링
- 그리디
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |