[Java] 2차원 리스트 다루기
아래 형태와 같은 2차원 배열을 다루는 방법에 대해 정리해보려 한다. [[0],[1],[3, 5]] int[][] input = {{0}, {1}, {3, 5}};List> graph = new ArrayList();for(int i = 0; i ());}// graph: [[], [], []]for(int i = 0; i
아래 형태와 같은 2차원 배열을 다루는 방법에 대해 정리해보려 한다. [[0],[1],[3, 5]] int[][] input = {{0}, {1}, {3, 5}};List> graph = new ArrayList();for(int i = 0; i ());}// graph: [[], [], []]for(int i = 0; i
validation 로직을 테스트하는 도중 아래과 같은 에러를 마주쳤다^^; 이 것은 ! ! 존재하지 않는 ! memberId로 member를 조회할 경우 값이 없기 때문에 나타나는 현상이다. -> get() 메서드 코드를 보면 자바에서는 Optional.get()을 사용했을 때 값이 없다면 No value present 메세지가 출력하는 걸 알 수 있다. ✏️ 해결 1 그래서 Optional 객체에 저장된 값이 null이면 get()메서드를 사용했을 때 No value present 예외가 발생하므로 get()을 호출하기 전에 isPresent() 메서드를 사용하여 Optional 객체에 저장된 값이 null인지 아닌지를 먼저 확인하는 것이 좋다구 한다 ~.~ public Member findMembe..
이 글은 자바의 정석을 읽고 개인적으로 공부한 내용을 정리한 글입니다 :> java.lang패키지와 유용한 클래스 java.lang패키지는 자바프로그래밍에 가장 기본이 되는 클래스들을 포함하고 있기 때문에, import문 없이도 사용할 수 있다. Object는 모든 클래스의 최고 조상!이기 때문에 Object클래스의 멤버들은 모든 클래스에서 바로 사용할 수 있다. 멤버 변수는 없고, 11개의 메서드만 가지고 있다. (1) equels(Object obj) class Value { int value; Value(int value) { this.value = value; } } class EqualsEx { public static void main(String[] args) { Value v1 = new ..
이 글은 자바의 정석을 읽고 개인적으로 공부한 내용을 정리한 글입니다 :> 예외 처리 exception handling 컴파일 에러 : 컴파일 시에 발생하는 에러 런타임 에러 : 실행시에 발생하는 에러 논리적 에러 : 실행은 되지만, 의도와 다르게 동작하는 것 에러 error : 프로그램 코드에 의해서 수습될 수 없는 심각한 오류 예외 exception : 프로그램 코드에 의해서 수습될 수 있는 다소 미약한 오류 - try-catch 문 try { // 예외가 발생한 가능성이 있는 문장들을 넣는다. } catch (Exception1 e1) { // Exception1이 발생했을 경우 실행할 문장을 넣는다. } catch (Exception2 e2) { // Exception1이 발생했을 경우 실행할 문..
이 글은 자바의 정석을 읽고 개인적으로 공부한 내용을 정리한 글입니다 :> Chapter6 객체지향 프로그래밍1 (1) 객체 지향 언어 장점 : 코드의 재사용성이 높고 유지보수가 용이하다. ** 너무 객체지향개념에 얽매여서 고민하기 보다는 일단 프로그램을 기능적으로 완성한 다음 어떻게 하면 보다 객체지향적으로 코드를 개선할 수 있을지를고민하여 점차 갯너해 나가는 것이 좋다. (2) 객체와 인스턴스 클래스로부터 객체를 만드는 과정을 클래스의 인스턴스화 라고 함 어떤 클래스로부터 만들어진 객체를 그 클래스의 인스턴스 라고 함 (3) 객체의 구성요소 속성 : member variable, attribute, field, state 기능 : method, function, behavior (4) 인스턴스의 생성..
자바 공부를 위해 자바의 정석이라는 책을 샀다. 책을 보며 공부한 내용을 끄적여보겠다! ㅎㅇㅌ Chapter1 자바를 시작하기 전에 (1) 자바의 특징 : 운영체제에 독립적 / 객체지향언어 / 자동 메모리 관리 / 네트워크와 분산처리 / 멀티쓰레드 지원 / 동적 로딩 지원 (2) JVM : Java virtual machine 자바를 실행하기 위한 가상 기계 : 자바로 작성된 어플리케이션은 모두 JVM에서만 실행되기 때문에, 자바 어플리케이션이 실행되기 위해서는 반드시 JVM이 필요하다. Chapter2 변수 (1) 변수란? : 단 하나의 값을 저장할 수 있는 메모리 공간 (2) 변수의 명명규칙 대소문자가 구분되며 길이에 제한이 없다. 예약어를 사용해서는 안된다. (if, true, int 등등) 숫자로..