반응형

IT/Java 17

[Java 공부] function 패키지 사용법, BiPredicate<T,U>

function 패키지 사용법, BiPredicate입력을 2개 받는 인터페이스이다.BiPredicateT, U 입력을 2개 받아서 값을 boolean 반환, boolean = test(T, U) 실행T, U 타입의 값을 받아 조건 판별(참/거짓 판단)을 하는데 사용주요 메소드 and(...), or(...), negate()Map 필터링import java.util.Map;import java.util.function.BiPredicate;public class BiPredicateTest { public static void main(String... strings) { // BiPredicate : 두 입력 → boolean BiPredicate equalsIgnore..

IT/Java 2025.09.15

[Java 공부] function 패키지 사용법, BiConsumer<T,U>

function 패키지 사용법, BiConsumer입력을 2개 받는 인터페이스이다.BiConsumerT, U 입력을 2개 받아서 출력 없음(void), accept(T, U)주로 출력, 저장, 로그 기록, 상태 변경 같은 동작에서 사용됨.사이드 이펙트 용도로 많이 사용import java.util.Arrays;import java.util.HashMap;import java.util.List;import java.util.Map;import java.util.function.BiConsumer;public class BiConsumerTest { public static void main(String... strings) { // 기본: BiConsumer : 두 입력 → 출력 없음 (..

IT/Java 2025.09.15

[Java 공부] function 패키지 사용법, BiFunction 와 Map 메소드

function 패키지 사용법, BiFunction 와 Map 메소드Bi~ 시리즈 인터페이스는 입력을 2개 받는 인터페이스이다.BiFunction / BiConsumer / BiPredicate 인터페이스이다.공부를 하다보니, 생각밖으로 하나하나의 클래스마다 활용도 높은 듯하다.일단 BiFunction 클래스부터...BiFunctionT, U 입력을 2개 받아서 R 출력, R = apply(T, U)import java.util.function.BiFunction;public class BifunctionTest { public static void main(String... strings) { // BiFunction : 두 입력 → 하나의 출력 BiFunction sum..

IT/Java 2025.09.11

[Java 공부] function 패키지 사용법, 기본

function 패키지 사용법, 기본java.util.function 패키지함수형 인터페이스(Functional Interface)를 모아둔 패키지기본 핵심 인터페이스Function, Consumer, Supplier, PredicateFunction: T 타입 입력 받아 R 타입 리턴, 입력 → 출력, R = apply(T)Consumer: T 타입 입력 받아 소비(리턴 없음), 입력만(사이드 이펙트), accept(T) 실행Supplier: 아무 입력도 없고 R 타입 리턴, 출력만(공급), R = get()Predicate: T 타입 입력 받아 boolean 반환, 조건/검사, boolean = test(T) 실행import java.util.function.Consumer;import java.ut..

IT/Java 2025.09.10

[Java 공부] 제네릭(Generics)

제네릭(Generics)자바에서 클래스나 메서드가 다룰 데이터 타입을 일반화(파라미터화)해서 재사용성을 높이는 기능이다.처음 자바를 공부할때, 제네릭이라는 개념은 알고 있었지만, 이게 이렇게까지 발전하고 사용될 줄 몰랐다.제네릭을 쓰면 컴파일 타임에 타입 안정성과 불필요한 형변환을 줄일 수 있다.1. 타입 파라미터 : 타입 파라미터를 의미(Type 약자) : 여러 개 가능(Key, Value) : Element : 리턴 타입class Box { private T value; public void set(T value) { this.value = value; } public T get(){ return value; }}public class Generic..

IT/Java 2025.09.09

[JAVA] 람다식 개념

람다식 개념(x,y) -> x + y 람다식이 표현하는 것은, 본질적으로 메서드 그 자체라고 말할 수 있다.- 함수와 메서드 메서드는 클래스의 멤버이기 때문에 클래스 정의 안에서 메서드 정의를 기술한다. 함수는, 그 자체가 오브젝트로 본다.메서드는 오브젝트에 포함되어 있지만, 함수는 노출되어 있는 상태이다. JAVA는 객체 지향 프로그밍의 대표이며,더 오래된 함수형 프로그래밍 언어는 함수를 First-class Object로 취급한다. 함수를 리터럴과 같이 취급이 가능한 오브젝트 그 자체로 인식 리터럴이라는 것은 데이터 그 자체를 의미한다. 문자열 리터럴은 실제로는 String 클래스의 인스턴스이다. JAVA의 문자열은, 리터럴과 같이 취급할 수 있는 오브젝트인 것이다. 함수도 이 관계와 동일하다. 함수..

IT/Java 2024.05.04

Spring Integration

오랜만에 기술 포스팅서비스 액티베이터는 메시지가 입력 채널에 도착했을 때 빈의 메서드를 호출하는 일반적인 엔드포인트다. 만약 메서드가 반환 값을 가지고 출력 채널을 설정한다면 해당 값은 출력 채널로 보내질 것이다스프링 인티그레이션 전자책을 찾다가, 누군가 한줄요약으로 써둔 문구.현 플첵 소스 분석과 함께 보면서, 저 문구가 핵심이라는 걸 알았다.여담.형에게 이야기하니,엔터프라이즈용으로 Spring Cloud 공부하는 게 더 좋을거라고 함.Spring Integration 은 제한적인 부분이 있다고 함.

IT/Java 2023.08.17

[Java] java.nio.file.Files 클래스

- java.nio.file.Files- since 1.7 - 입출력의 기본이 되는 파일 부분부터 공부를 진행 중이다.- Files 클래스에 파일 관련 많은 기능들이 제공이 되어서 기본 샘플 및 공부한 내용을 정리함.- Files 클래스를 활용함으로써, Input/Output Stream 객체 생성의 코드가 많이 줄어듬. - 샘플 소스 내용1. 수신 폴더에 확장자 OK 파일 확인2. 확장자 OK 파일을 읽어서 업무처리3. 업무처리 후 파일 백업- 확장자 샘플은 자바 버전 1.8 이상. package sample;import java.io.IOException;import java.nio.charset.Charset;import java.nio.file.Files;import java.nio.file.L..

IT/Java 2022.10.31

[Java] NIO 기본동작방식 및 개념?

- NIO ( New Input Output )- NIO의 동작 방식은 버퍼를 만들어서 채널에 쓰는 방식으로 동작한다.- java.io 에서는 InputStream / OutputStream을 얻어서 별도의 읽기/쓰기로 동작되지만,- java.nio 에서는 Stream에서 채널을 얻거나 또는 채널을 생성하면, 양방향으로 가능하다. - NIO File 샘플 소스package sample;import java.io.IOException;import java.nio.ByteBuffer;import java.nio.CharBuffer;import java.nio.channels.FileChannel;import java.nio.charset.Charset;import java.nio.file.Path;impor..

IT/Java 2022.10.11
반응형