자바/자바8
-
[Stream] int 숫자 배열을 filter를 통해서 내림차순으로 정렬하기자바/자바8 2021. 4. 22. 22:02
int[] A = new int[]{3, 2, -2, 5, -3}; int[] positives = IntStream.of(A).boxed().sorted(Comparator.reverseOrder()) .filter(o -> o >= 0) .mapToInt(i -> i) .toArray(); int[] negatives = IntStream.of(A).boxed().sorted(Comparator.reverseOrder()) .filter(o -> o i) .toArray(); for(int value : positivies) { if(IntStream.of(negatives).anyMatch(o -> o == -value)) return value; }
-
[JAVA] Streams를 이용한 Map Collection 사용 방법자바/자바8 2021. 1. 20. 12:55
이번 시간에는 Streams을 통해서 Map을 제어하는 방법에 대해서 알아보도록 하겠습니다. map 생성 (key는 책이름, value는 재고개수) Map books = new HashMap(); key-value pairs의 set을 구하는 방법 Set entries = books.entrySet(); map의 key set을 구하는 방법 Set keySet = books.keySet(); map의 value collection을 구하는 방법 Collection values = books.values(); 위의 collection들은 Streams을 이용하여 Map을 처리할 수 있는 진입점을 아래와 같이 제공해줍니다. Stream entriesStream = entries.stream(); Stream..
-
[JAVA] JAVA8 스트림 Max&Min 사용 방법자바/자바8 2020. 9. 17. 11:39
이번 시간에는 Stream API를 이용해서 주어진 collection에서 max & min 값을 찾아내는 방법에 대해서 알아보도록 하겠습니다. Integer 리스트에서 Max 값 찾기 @Test public void testFindMaxValueInIntegerList() throws Exception { // given Integer expectedResult = 70; List listOfIntegers = Array.asList(4, 9, 1, 10, 48, 70); // when Integer max = listOfIntegers .stream() // 리스트 객체에서 스트림을 얻어오는 함수 .mapToInt(v -> v) // Integer 스트림을 얻어오는 함수 .max() // max 값을..