분류 전체보기 48

Lombok (@EqualsAndHashCode ) 직접 오버라이드

장 단점 @EqualsAndHashCode를 사용하면 Lombok이 알아서 Equals 와 HashCode를 재정의 해준다. @EqualsAndHashCodepublic Class User { private Long id; private String name; private int age;}// 이렇게 하게 되면 // Equals 와 hashCode 를 모든 필드에 대해 비교 후 재정의 하게 된다. 나는 id만 equals 와 hashCode로만 재정의를 하고 싶다고 한다면직접 오버라이드를 사용 하거나 @EqualsAndHashCode에 정의를 해주면 된다. Lombok@EqualsAndHashCode(onlyExplicitlyIncluded = true)public clas..

Spring 2025.07.15

IntelliJ test코드 템플릿

File -> settings -> Editor -> Live Templates 로 들어간다. 그 후 + 버튼을 누르고Abbreviation: testgwt Description: JUnit test with given-when-then Template text:@Test@DisplayName("$desc$")void $name$() { // given // when // then} Edi Variables 클릭 후 입력을 한다.NameExpressionDefault valueSkip if defineddesc(none)"" namesuggestMethodName()(자동) 그 후 Define 버튼을 클릭 후Java 또는 Java-> Declaration 을 체크 한다.그후 Apppl..

카테고리 없음 2025.04.30

자바에서 비교 시 equals / == 비교

문자열 비교 시에는 == 을 사용하지 않는다.문자 String은 참조형이기 때문에 ==은 주소(참조값)을 비교하기 위해서 사용하므로문자열 비교시에는 equlas를 사용해서 비교를 해준다. String str = "Hello"; String str2 = "Hello"; String str3 = new String("Hello"); System.out.println(str == str2); //true System.out.println(str == str3); //false (주소값이 다르기때문) System.out.println(str.equals(str2)); //true System.out.println(str.equals(str3)); //true

JAVA 2025.04.26

자바 메모리 구조

메서드 영역프로그램을 실행하는데 필요한 공통 데이터를 관리 프로그램의 모든 영역에서 공유클래스 당 한 번만 올라감GC의 대상이 아님 스택 영역 LIFO 구조 (Last In First Out)빠른 속도: 생성과 제거가 단순메서드 실행과 생명주기가 1:1 매칭쓰레드마다 따로 관리됨GC 대상 아님 (자동 소멸됨)힙 영역new로 생성된 객체, 배열, 인스턴스 변수여러 스레드에서 공유됨 (동기화 필요)메서드 실행과 생명주기가 1:1 매칭GC(Garbage Collector)**가 사용하지 않는 객체를 자동으로 제거

JAVA 2025.04.26

서버실 17245 자바

이번에 푼 문제는 백준의 서버실이라는 문제이다.이 문제는 절반이상의 컴퓨터가 장애를 일으키지 않을 때 최소 시간을 구하는 것이다.이분 탐색을 이용해서 풀면 된다.(매개 변수 탐색) import java.util.Scanner;public class Main { static int N; static long totalComputer; //총합 컴퓨터 static int[][] computer; public static void input() { Scanner scan = new Scanner(System.in); N = scan.nextInt(); computer = new int[N][N]; //서버실의 컴퓨터 for(int ..

알고리즘 2025.04.06