목록All Categories 73
Formoat's Open Blog

인터페이스 구현 클래스 특징 List ArrayList, Vector, LinkedList 순서 유지, 인덱스로 관리, 중복해서 객체 저장 가능 1. ArrayList 인덱스를 이용해 요소들을 관리한다는 점은 배열과 유사하다. 하지만 배열과 달리 저장 공간이 부족할 경우 자동으로 크기가 늘어난다는 점이 다르다. 용량을 특정하지 않을경우 기본값은 10이다. 요소들은 0번 인덱스부터 차례로 저장이 되고, 특정 인덱스의 요소를 제거할 경우 해당 인덱스의 바로 뒷부분에 저장된 요소부터 한칸씩 앞으로 이동한다. 반대로 특정 인덱스에 요소를 추가하는 것도 가능하다. 이도 마찬가지로 인덱스 요소부분부터 한칸씩 뒤로 이동한다. 이 때문에 많은 데이터를 특정 인덱스에 추가/삭제할 경우 ArrayList가 아닌 Linke..

2019/09/04 - [Java] - 컬렉션 - List 2019/09/04 - [Java] - 컬렉션 - Set 2019/09/04 - [Java] - 컬렉션 - Map 2019/09/04 - [Java] - 컬렉션 - Tree 2019/09/04 - [Java] - 컬렉션 - Stack, Queue 1. 컬렉션 프레임워크 란? 1) 다수의 데이터(객체)를 보다 쉽고 효과적으로 처리할 수 있는 클래스의 집합/라이브러리 2) 크게잡아 List, Set, Map 3가지 인터페이스로 정의되어있고 이를 상속, 구현하는 클래스, 인터페이스가 있다. 3) 기존의 배열이 가지고 있던 문제점을 해결하기 위해 만들어졌다. # 배열이 가지고 있던 문제점 (1) 배열 생성시 배열의 크기를 정해야 하는데 크기가..

1. Predicate 1) 매개값을 조사해 true / false 형식으로 반환하는 함수적 인터페이스 2) 매개값을 조사하는 testXXX() 메소드를 가지고 있다. 3) 반환타입은 모두 boolean 타입으로 고정 되어 있다. Interface Name Abstract Method Remarks Predicate boolean test(T t) 객체 T를 조사 BiPredicate boolean test(T t, U u) 객체 T와 U를 비교 조사 DoublePredicate boolean test(double value) double 값을 조사 IntPredicate boolean test(int value) int 값을 조사 LongPredicate boolean test(long value)..

1. Operator 1) 매개값과 반환값이 모두 있는 함수적 인터페이스 2) 매개값과 반환값이 모두 있는 applyXXX() 메소드를 가지고 있다. 3) 이들 메소드는 매개값을 이용해 연산후 동일한 타입으로 결과를 반환한다. 4) Function과 다른점은 매개값과 반환값의 타입이 같다는 것이다. Interface Name Abstract Method Remarks BinaryOperator T apply(T t1, T t2) 두 개의 T 연산 후 반환 UnaryOperator T apply(T t) 하나의 T 연산 후 반환 DoubleBanaryOperator double applyAsDouble(double value1, double value2) 두 개의 double 연산 후 반환 Double..

1. Function 1) 매개값과 반환값이 모두 있는 함수적 인터페이스 2) 매개값과 반환값이 모두 있는 applyXXX() 메소드를 가지고 있다. 2) 이들 메소드는 매개값을 이용해 연산하고 다른타입으로 결과를 반환하는 역할을 한다. 4) Operator와 다른점은 매개값과 반환값의 타입이 다르다는 것이다. Interface Name Abstract Method Remarks Function R apply(T t) 객체 T를 객체 R로 매핑 후 반환 BiFunction R apply(T t, U u) 객체 T, U를 객체 R로 매핑 후 반환 DoubleFunction R apply(double value) double 값을 객체 R로 매핑 후 반환 IntFunction R apply(int v..

1. Supplier 1) 매개값이 없고 반환값만 있는 함수적 인터페이스 2) 매개값이 없고 반환값만 있는 getXXX() 메소드를 가지고 있다. 3) 이들 메소드는 실행 후 호출한 곳으로 데이터를 반환하는 역할을 한다. Interface Name Abstract Method Remarks Suppplier T get() 객체를 반환 BooleanSuppplier boolean getAsBoolean() boolean 값을 반환 DoubleSuppplier double getAsDouble() double 값을 반환 IntSuppplier int getAsInt() int 값을 반환 LongSuppplier long getAsLong() long 값을 반환 Supplier 함수적 인터페이스의 종류 S..

1. Consumer 1) 매개값만 있고 반환값은 없는 함수적 인터페이스 2) 매개값을 받아 소비하는 accept 메소드를 가지고 있다. 3) 매개변수타입, 수에 따라 아래와 같은 다양한 Consumer가 있다. Interface Name Abstract Method Remarks Consumer void accept(T t) 객체 T를 받아 소비 BiConsumer void accept(T t, U u) 객체 T, U를 받아 소비 DoubleConsumer void accept(double value) double 값을 받아 소비 IntConsumer void accept(int value) int 값을 받아 소비 LongConsumer void accept(long value) long 값을 ..

2019/09/03 - [Java] - 함수적 인터페이스 - Consumer 2019/09/03 - [Java] - 함수적 인터페이스 - Supplier 2019/09/03 - [Java] - 함수적 인터페이스 - Function 2019/09/03 - [Java] - 함수적 인터페이스 - Operator 2019/09/03 - [Java] - 함수적 인터페이스 - Predicate 1. 람다식이란? 1) y =f(x) 형태의 함수형 프로그래밍 기법 2) 데이터를 매개 값으로 전달해 결과를 받는 코드로 구성 3) 람다 함수를 사용하여 불필요한 루프 문을 삭제해 코드가 간결해짐 4) 대용량 데이터 처리, 데이터 병렬 처리, 이벤트 지향 프로그래밍에 적합 5) 함수적 인터페이스는 모두 람다식에 사용 가능..