SeouliteLab

[Java/자바] BiConsumer 인터페이스 예제와 활용 본문

프로그래밍

[Java/자바] BiConsumer 인터페이스 예제와 활용

Seoulite Lab 2024. 3. 13. 08:11

BiConsumer는 Java에서 함수형 인터페이스 중 하나로, 두 개의 입력 인수를 받아들이고 작업을 수행하는 메서드를 정의합니다. 이번에는 BiConsumer의 예제 코드와 활용에 대해 살펴보겠습니다.

예제 1: 두 개의 숫자를 더하는 BiConsumer

BiConsumer adder = (a, b) -> {
    int sum = a + b;
    System.out.println("두 수의 합: " + sum);
};

adder.accept(5, 7); // 출력 결과: 두 수의 합: 12

이 예제에서는 두 개의 숫자를 받아들이고 더한 후 합계를 출력하는 BiConsumer를 만들어 실행했습니다.

예제 2: 문자열을 출력하는 BiConsumer

BiConsumer stringPrinter = (s1, s2) -> System.out.println(s1 + " " + s2);

stringPrinter.accept("Hello", "World!"); // 출력 결과: Hello World!

이 예제에서는 두 개의 문자열을 받아들이고 이를 결합하여 출력하는 BiConsumer를 만들어 실행했습니다.

예제 3: 리스트의 요소를 출력하는 BiConsumer

import java.util.Arrays;
import java.util.List;

List colors = Arrays.asList("Red", "Green", "Blue");

BiConsumer listPrinter = (index, color) -> System.out.println(index + ": " + color);

for (int i = 0; i < colors.size(); i++) {
    listPrinter.accept(i, colors.get(i));
}

이 예제에서는 리스트의 요소를 인덱스와 함께 출력하는 BiConsumer를 만들어 실행했습니다.

예제 4: 파일 목록을 출력하는 BiConsumer

import java.io.File;
import java.util.Arrays;

File directory = new File("directory_path_here");
File[] files = directory.listFiles();

BiConsumer filePrinter = (index, file) -> System.out.println(index + ": " + file.getName());

for (int i = 0; i < files.length; i++) {
    filePrinter.accept(i, files[i]);
}

이 예제에서는 디렉토리의 파일 목록을 인덱스와 함께 출력하는 BiConsumer를 만들어 실행했습니다.

예제 5: 두 수를 곱하는 BiConsumer

BiConsumer multiplier = (a, b) -> {
    double product = a * b;
    System.out.println("두 수의 곱: " + product);
};

multiplier.accept(3.5, 2.0); // 출력 결과: 두 수의 곱: 7.0

이 예제에서는 두 개의 수를 받아들이고 곱한 후 결과를 출력하는 BiConsumer를 만들어 실행했습니다.

예제 6: 문자열을 반대로 출력하는 BiConsumer

BiConsumer reversePrinter = (s1, s2) -> {
    StringBuilder sb = new StringBuilder(s1);
    sb.reverse();
    System.out.println(sb.toString() + " " + s2);
};

reversePrinter.accept("Java", "is Awesome!"); // 출력 결과: avaJ is Awesome!

이 예제에서는 첫 번째 문자열을 역순으로 출력하는 BiConsumer를 만들어 실행했습니다.