[JAVA] String 배열 초기화 1. 크기만 지정해서 초기화 String[] configValArr = new String[5]; // 길이 5짜리 배열 생성, 초기값은 null 2. 초기 값을 함께 지정해서 초기화 String[] configValArr = new String[] {"val1", "val2", "val3"}; 3. 축약형 초기화 String[] configValArr = {"val1", "val2", "val3"}; JAVA 2025.07.21
[JAVA] Stream보다 forEach가 더 나은 경우 🧠 왜 Stream보다 forEach가 더 나은가?Stream은 데이터 가공 → 새로운 리스트 생성에 적합복잡한 조건 분기(switch)와 부작용이 있는 set 호출은 **명확한 순차적 처리(for, forEach)**가 더 읽기 쉽고 디버깅도 쉬움 JAVA 2025.05.10
[JAVA] 람다식 표현을 메서드 참조 방식으로 변경하기 + 장점 ✅ 1. 메서드 참조로 변환 예제 유형람다식메서드 참조설명정적 메서드 참조x -> Math.abs(x)Math::abs클래스의 static 메서드를 참조인스턴스 메서드 (특정 객체)s -> s.toLowerCase()String::toLowerCase인스턴스 메서드 참조인스턴스 메서드 (임의 객체)x -> x.equals("A")"A"::equals특정 값의 메서드를 참조생성자 참조() -> new ArrayList()ArrayList::new생성자를 참조배열 생성자size -> new int[size]int[]::new배열 생성자 참조✅ 예제 코드📌 예제 1: forEach에서 출력// 람다식list.forEach(item -> System.out.println(item));// 메서드 참조list... JAVA 2025.05.09
[JAVA] 특정 값 배열에 포함되는지를 체크 (JAVA8 이후) if (Stream.of("1", "2", "6", "7", "10").anyMatch(code -> code.equals(crchTp))) { contractMngService.updateCrItems();}이 방식은 다음과 같은 장점이 있습니다:Stream.of(...)로 배열처럼 여러 값을 처리 가능anyMatch(...)로 조건에 맞는 값이 하나라도 있는지 체크 가능가독성이 좋고 함수형 프로그래밍 스타일에 적합단, 이 방식은 Arrays.asList(...).contains(...)에 비해 성능 차이는 거의 없으며, 코드 스타일의 선호에 따라 선택. [메서드 참조 방식으로 변경]if (Stream.of("1", "2", "6", "7", "10").anyMatch(crchTp::equals).. JAVA 2025.05.08
[JAVA] 특정 값 배열에 포함되는지를 체크 (JAVA8 이전) if (Arrays.asList("1", "2", "6", "7", "10").contains(crchTp)) { switch (crchTp) { case "1": case "2": case "6": case "7": case "10": contractMngService.updateCrItems(); break; }} 특정 값 배열에 포함되는지를 체크하고 싶다면,Java에서는 일반적으로 Arrays.asList()와 contains()를 함께 사용하는 방식이 가장 깔끔합니다. JAVA 2025.05.07
[JAVA] List<String> 각 항목에 ' 붙이기 String mtrmCdInClause = mtrmScds.stream() .map(cd -> "'" + cd + "'") // 각 항목에 ' 붙이기 .collect(Collectors.joining(",")); JAVA 2025.05.03
[JAVA] Optional 주의할 점 ❌ Optional을 필드에 사용하지 말 것class User { private Optional name; // ❌ 권장되지 않음}✔ Optional은 메서드 반환 타입으로 사용해야 함✔ 필드에는 null 대신 기본값을 사용하는 것이 더 효율적 필드에는 사용하지 말고, 메서드 반환 타입으로만 활용하는 것이 바람직함 JAVA 2025.02.19
[JAVA] Optional을 활용한 컬렉션 처리 ✅ 리스트가 null일 수도 있는 경우 안전한 처리List names = null;List safeNames = Optional.ofNullable(names).orElse(Collections.emptyList());for (String name : safeNames) { System.out.println(name);}✔ null이면 emptyList()를 반환하여 NullPointerException 방지✔ 향상된 for문에서도 안전하게 실행 가능 JAVA 2025.02.18
[JAVA] Optional 주요 메서드 정리 ✅ 값이 존재할 때만 실행 (ifPresent())Optional optional = Optional.of("Hello");optional.ifPresent(System.out::println); // 출력: Hello✔ 값이 있을 때만 System.out.println() 실행✔ 값이 없으면 아무 동작도 하지 않음 ✅ 값이 없을 때 기본값 설정 (orElse())String result = Optional.ofNullable(null).orElse("Default Value");System.out.println(result); // 출력: Default Value✔ 값이 없으면 "Default Value" 반환 ✅ 값이 없을 때 동적으로 값 설정 (orElseGet())String result = .. JAVA 2025.02.17