자바29 Optional<T> 자바의 Optional 클래스는 Java8 부터 도입되어, "null"이 될 수 있는 객체를 감싸는 래퍼(wrapper) 클래스 입니다. Optional을 사용하면 NullPointException이 발생할 수 있는 상황을 명시적으로 회피하고, 코드의 가독성을 높일 수 있습니다. Optional은 값이 있거나 없을 수 있는 값을 나타내며, 값이 없는 경우를 더 안전하게 처리할 수 잇는 다양한 메서드를 제공합니다. 주요 메서드 Optional.of(T value) : null이 아닌 값을 갖는 Optional 객체를 생성합니다. null이면 NullPointException을 던집니다. Optional.ofNullalble(T value) : 값이 null일 수 있는 경우에 사용하며, 값이 null 이면 .. 2024. 2. 6. Stream API 자바 8에서 처음 소개된 Stream은 컬렉션(Collection)의 처리를 매우 간결하고 호율적인 방식으로 할 수 있게 도와줍니다. Stream API를 사용하면 데이터를 선언적으로 처리할 수 있으며, 데이터 컬렉션을 함수형 스타일로 처리할 수 있게 합니다. 이는 루프와 조건문을 사용하지 않고도 데이터를 필터링, 정렬, 변환 등 다양한 연산을 수행할 수 있게 합니다. Stream API의 주요 특징 불변성 Stream API의 불변성(Immutability)은 스트림 연산이 원본 데이터를 변경하지 않는다는 것을 의미합니다. 즉, 스트림 연산은 원본 컬렉션에 어떤한 변화도 주지 않고, 필요한 연산의 결과를 새로운 스트림이나 값으로 반환합니다. public class StreamExample { publi.. 2024. 2. 2. Lamda Method Reference 람다 메서드 래퍼런스는 람다 표현식을 더 간결하게 표현하는 방법 중 하나입니다. 메서드 래퍼런스를 사용하면 기존 메서드 호출하는 람다 표현식을 좀 더 짧고 가독성 있게 표현할 수 있습니다. 메서드 참조는 메서드명 앞에 구분자 (::)를 붙이는 방식으로 메서드 참조를 활용할 수 있다. 결과적으로 메서드 참조란 람다 표현식 ( s -> System.out.println(s") ) 를 축약한 것이다. 이런 메서드 래퍼런스 방식은 IntelliJ 같은 툴을 활용하면 자동으로 변환하여 준다. 기존 코드 List names = Arrays.asList("Alice", "Bob", "Charlie"); names.forEach(s -> System.out.println("s = " + s)); 메소드 래퍼런스 코드 .. 2024. 1. 31. Java Lamda 표현식과 Stream API Java8에서 소개된 Lamda 표현식과 Stream API는 JAVA 언어를 더욱 강력하게 만들어 주었습니다. 코드를 간결하게 작성할 수 있도록 도와주며, 컬렉션 처리, 필터링, 매핑, 리듀싱 등 다양한 연산을 지원하여 코드의 가독성과 유지보수성을 향상시켜줍니다. 아래에서 Lamda 표현식과 Stream API 대한 설명과 예시를 이어 나가도록 하겠습니다. Lamda 표현식 람다 표현식은 익명 함수를 간단하게 표현하는 방법으로 자바8부터 도입 되었습니다. 간결한 문법으로 함수형 프로그래밍의 이점을 활용할 수 있습니다. 간결한 문법 // 기존의 방식 Runnable runnable = new Runnable() { @Override public void run() { System.out.println(".. 2024. 1. 31. 이전 1 2 3 4 5 ··· 8 다음