validation 로직을 테스트하는 도중 아래과 같은 에러를 마주쳤다^^; 이 것은 ! ! 존재하지 않는 ! memberId로 member를 조회할 경우 값이 없기 때문에 나타나는 현상이다. -> get() 메서드 코드를 보면 자바에서는 Optional.get()을 사용했을 때 값이 없다면 No value present 메세지가 출력하는 걸 알 수 있다. ✏️ 해결 1 그래서 Optional 객체에 저장된 값이 null이면 get()메서드를 사용했을 때 No value present 예외가 발생하므로 get()을 호출하기 전에 isPresent() 메서드를 사용하여 Optional 객체에 저장된 값이 null인지 아닌지를 먼저 확인하는 것이 좋다구 한다 ~.~ public Member findMembe..
이 글은 자바의 정석을 읽고 개인적으로 공부한 내용을 정리한 글입니다 :> 예외 처리 exception handling 컴파일 에러 : 컴파일 시에 발생하는 에러 런타임 에러 : 실행시에 발생하는 에러 논리적 에러 : 실행은 되지만, 의도와 다르게 동작하는 것 에러 error : 프로그램 코드에 의해서 수습될 수 없는 심각한 오류 예외 exception : 프로그램 코드에 의해서 수습될 수 있는 다소 미약한 오류 - try-catch 문 try { // 예외가 발생한 가능성이 있는 문장들을 넣는다. } catch (Exception1 e1) { // Exception1이 발생했을 경우 실행할 문장을 넣는다. } catch (Exception2 e2) { // Exception1이 발생했을 경우 실행할 문..
자바 공부를 위해 자바의 정석이라는 책을 샀다. 책을 보며 공부한 내용을 끄적여보겠다! ㅎㅇㅌ Chapter1 자바를 시작하기 전에 (1) 자바의 특징 : 운영체제에 독립적 / 객체지향언어 / 자동 메모리 관리 / 네트워크와 분산처리 / 멀티쓰레드 지원 / 동적 로딩 지원 (2) JVM : Java virtual machine 자바를 실행하기 위한 가상 기계 : 자바로 작성된 어플리케이션은 모두 JVM에서만 실행되기 때문에, 자바 어플리케이션이 실행되기 위해서는 반드시 JVM이 필요하다. Chapter2 변수 (1) 변수란? : 단 하나의 값을 저장할 수 있는 메모리 공간 (2) 변수의 명명규칙 대소문자가 구분되며 길이에 제한이 없다. 예약어를 사용해서는 안된다. (if, true, int 등등) 숫자로..
문제 > https://www.acmicpc.net/problem/1181 1181번: 단어 정렬 첫째 줄에 단어의 개수 N이 주어진다. (1 ≤ N ≤ 20,000) 둘째 줄부터 N개의 줄에 걸쳐 알파벳 소문자로 이루어진 단어가 한 줄에 하나씩 주어진다. 주어지는 문자열의 길이는 50을 넘지 않는다. www.acmicpc.net 관련 내용 > 2022.01.19 - [뚝딱뚝딱/Java] - [Java] Arrays.sort() 재정의하기 / Comparator 재정의 / 정렬 조건 바꾸기 작성한 코드 > import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Ar..
김영한님의 스프링 입문 강의를 듣다가 JUnit의 assertThat / assertj의 assertThat 가 정확히 무엇이 다른지! 테스트 코드를 작성 할 때에 왜 assertj의 assertThat을 사용한건지! 궁금해져서 공부해보기로 했다 1. JUnit이란? : 자바를 위한 단위 테스트 라이브러리(오픈소스)이다. : 자바 어플리케이션에 대한 단위 테스트를 쉽게 해주는 테스트용 프레임워크라고 이해하자 # 단위 테스트 Unit Test란? : 모든 함수와 메소드에 대한 테스트 케이스를 작성하는 절차 : 소스 코드의 특정 모듈이 의도대로 동작하는지 확인 # JUnit의 assert 메소드들 assertEquals(A, B) : 객체 A와 B가 같은 값을 가지는지 확인한다. assertEquals(A,..
백준 1181 문제를 푸는데 Arrays.sort에 Comparator를 재정의하면 내가 원하는 조건으로 정렬 할 수 있다는 걸 알게되어 한번 정리해보겠다 !! Arrays.sort() 는 기본적으로 2가지 인자를 받는다. Array.sort(arr, new Comparator ) Array.sort(arr) 이런 식으로 인자를 1개만 줄 경우 Comparator은 default값으로 적용되어 실행이 되는 것이다. (정수 정렬할 때는 default값으로 해도 상관없음!) 그러나 문자열을 정렬하기 위해서는 따로 재정의가 필요함 Arrays.sort(arr, new Comparator() { @Override public int compare(String s1, String s2) { if(s1.length..