반응형

Java8 6

[Java] 날짜 및 시간 API (Date and Time API) 사용 방법

Java 8에서는 java.time 패키지가 추가되어 날짜와 시간을 다루는 API를 제공한다. 이 API는 이전의 java.util.Date 및 java.util.Calendar 클래스보다 사용하기 쉽고, 더 정확하고 기능을 제공하고있다. 1. java.time 제공 클래스 클래스 설명 LocalDate 날짜를 표현하는 클래스로, 연, 월, 일 정보만 포함 LocalTime 시간을 표현하는 클래스로, 시, 분, 초, 밀리초 정보만 포함 LocalDateTime 날짜와 시간을 모두 포함하는 클래스로, LocalDate와 LocalTime의 조합 Instant 기계적인 시간의 흐름을 나타내는 클래스로, 에포크부터 경과한 시간 표현 Duration 두 시간 간의 지속 시간을 나타내는 클래스로, 시간 기반의 간..

Java 2023.05.30

[Java] 함수형 인터페이스 종류 및 사용 방법

함수형 인터페이스란? Java 8에서 추가된 기능으로 단 하나의 추상 메서드를 가지며, 람다 표현식이나 메서드 참조로 이를 구현할 수 있다. 람다 표현식과 스트림(Stream) API가 도입되면서 함수형 프로그래밍 스타일이 훨씬 더 쉽고 강력해졌으며, 함수형 인터페이스는 이를 지원하기 위한 핵심 요소입니다. 1. 함수형 인터페이스 1-1) 종류 인터페이스 설명 추상 메서드 Supplier 매개변수 없이 값을 제공하는 함수형 인터페이스 T get() Consumer 매개변수를 받아서 값을 소비하는 함수형 인터페이스 void accept(T t) BiConsumer 두 개의 매개변수를 받아서 값을 소비하는 함수형 인터페이스 void accept(T t, U u) Predicate 매개변수를 받아서 논리적인 ..

Java 2023.05.26

[Java] 기본 메서드(Default Methods) 개념 및 사용 방법

기본 메서드란? Java 8에서 추가된 기능으로 인터페이스에 새로운 메서드를 추가하기 위한 방법이다. 이전의 Java 버전에서는 인터페이스에 메서드를 선언하면 해당 인터페이스를 구현하는 모든 클래스에서 해당 메서드를 구현해야 했지만, 기본 메서드를 사용하면 인터페이스에 기본 구현을 제공할 수 있으며, 구현 클래스에서 해당 메서드를 오버라이드하지 않아도 된다. 1. default 메서드 구문 public interface MyInterface { // 추상 메서드 void abstractMethod(); // default 메서드 default void defaultMethod() { // 구현 코드 } } default 키워드를 사용하여 메서드를 선언 중괄호 내부에 메서드의 구현 코드를 작성 defaul..

Java 2023.05.25

[Java] 메서드 참조 사용 방법

메서드 참조 (method reference)란? Java 8에서 추가된 기능으로 메서드를 참조하여 람다식을 더 간결하게 표현할 수 있는 방법이다. 메서드 참조는 함수형 인터페이스를 사용하는 람다 표현식의 축약된 형태로 볼 수 있습니다. 1. 사용방법 1-1) 정적 메서드 참조 클래스이름::정적메서드이름 class StringUtils { public static boolean isNotEmpty(String str) { return str != null && !str.isEmpty(); } } public class MethodReferenceExample { public static void main(String[] args) { List strings = Arrays.asList("Alice", "..

Java 2023.05.24

[Java] 스트림(Stream) API 사용 방법

스트림 API(Stream API)란? Java 8부터 도입된 기능으로, 컬렉션 데이터를 처리하고 변환하는 작업을 간단하게 할 수 있는 API이다. 스트림을 사용하면 데이터 처리를 파이프라인 형식으로 연결하여 선언적으로 표현할 수 있다. 1. Stream API 구문 import java.util.Arrays; import java.util.List; public class StreamExample { public static void main(String[] args) { List numbers = Arrays.asList(1, 2, 3, 4, 5); // 스트림 생성 numbers.stream() // 중개 연산: 짝수만 필터링 .filter(n -> n % 2 == 0) // 중개 연산: 제곱값으로..

Java 2023.05.23

[Java] 람다 표현식 사용 방법

람다 표현식(Lambda Expressions)이란? Java 8에서 도입된 함수형 프로그래밍의 핵심 기능으로 람다 표현식은 익명 함수(Anonymous Functions)를 간결하게 표현하는 방법이다. 함수를 변수에 할당하거나 다른 함수에 전달하는 등의 작업을 수행할 수 있다. 1. 람다 표현식 구문 (parameter) -> { expression } parameter : 매개변수를 정의하고, 매개변수를 받지 않는 경우 빈 괄호 '()'를 사용 expression : 실행할 함수를 정의한다. 식(expression)이 하나인 경우 중 괄호 '{}'를 생략할 수 있다. 1-1) 익명함수와 람다 표현식 비교 // 익명 함수 Function anonymousFunction = new Function() {..

Java 2023.05.22
반응형