본문 바로가기

JAVA

(19)
스트림5 map() 스트림의 내용 변환 map() 스트림의 내용 변환 stream map(function
스트림4 중간연산 예제 스트링의 중간연산 예제 Stream skip (long n) //앞에서부터 n개 뛰어넘기 Stream limit (long maxsize) //maxsize 이후에 요소는 잘라냄 IntStream intStream = IntStream.rangeClosed(1,10) //12345678910 intStream.skip(3).limit(5).forEach(system.out.println("")) //45678 //.skip(3) 앞에서 3개 건너 뛰기 45678910 //.limit(5) 앞에서부터 5개 만 가져오기 45678 IntStream intStream = IntStream.of(1,2,2,3,3,3,4,5,5,6) intStream.distinct().forEach(system.out.prin..
스트림3 스트림의 최종연산 스트림의 최종연산 void forEach(consumer
스트림2 스트림의 중간연산 스트림의 연산 스트림이 제공하는 기능 - 중간연산과 최종연산 중간연산 - 연산결과가 스트림인 연산 반복적으로 사용가능 최종연산 - 연산결과가 스트림이 아닌 연산 , 단 한번만 적용가능 (스트림 요소를 소모) Stream.distinct().limit().sorted().forEach(system.out.println) 스트림의 연산 , 중간연산 Stream distinct() // 중복제거 Stream filter(predicate predicate) //조건에 안맞는요소를 걸러낸다. Stream limit(long maxSize) //스트림의 일부를 잘라낸다. Stream skip(long n) //스트림의 일부를 건너뛴다. Stream peek(Consumer action) //스트림각 요소에 작업 ..
스트림1 스트림의 특징 스트림(stream) -다양한 데이터소스를 표준화된 방법으로 다루기 위한것 ( 컬렉션 , 배열 등) Stream은 Collection 의 진화형 List list = Arrays.asList(1,2,3,4,5) Stream intStream = list.stream(); //컬렉션 //.stream() 메서드로 list를 stream 으로 만든다. Stream strStream = stream.of(new String[]{"a","b","c"}) // 매열 Stream everStream = stream.iterate(0, n -> n+2); Stream randomStream = stream.generate(Math::random); IntStream intStream = new Random(),int..
람다6 메소드 참조 생성자의 메서드 참조 메서드 참조 (method reference) 하나의 메서드만 호출하는 람다식은 메서드 참조로 간단히 표현할 수 있다. 람다식을 더 간단히 한다. static 메서드 참고 (x) -> className.method(x) 의 람다식을 메소드 참조로 변환 className::method(x) 인터페이스 메서드 참조 (obj x) -> obj.method(x) 위 메서드를 메서드 참조로 변환 className::method 메서드 참조 = 클래스이름 :: 메서드 이름 static 메서드 참조 Integer method (String s) { //그저 Integer.parseInt(String s) 만 호출하는 일반 메서드 return Integer.parseInt(s); } //Integ..
람다5 함수 두개를 연결 andThan 함수 두개를 연결 andThan Function f = (s) -> Integer.parseInt(s,16); Function g = (i) -> Integer.toBinaryString(1); 위 두 함수를 합쳐서 사용 Function h = f.andThan(g); //Function , f 함수를 실행한 결과를 g에 매개변수로서 적용한다, 항등함수 x를 넣으면 x가 그대로 나오는 함수 Function f2 = x -> x; 컬렉션 프레임워크와 함수형 인터페이스 함수형 인터페이스를 사용하는 컬렉션 프레임워크 의 메서드 Collection , boolean removeIf(predicate filter) 조건에 맞는 요소를 삭제 List void replaceAll(unaryOperator operat..
람다4 Predicate 람다 조건식 람다와 스트림3 Predicate 람다 조건식 predicate = 조건식 boolean 값을 반환 and() , or() , nagate() = not , 등으로 두 predicate를 하나로 결합(default 메서드) predicate 는 함수형 인터페이스이다. predicate p = i -> i i i%2 == 0; predicate 는 조건식을 가지고 있다, true / false의 결과값을 반환한다. predicate notP = p.negate() // p의 결과값을 반대로 반환한다. 즉(100