자바 8 인 액션

1. java8을 사용하는 이유

Featured image

스트림 처리

동작 파라미터화로 메서드에 코드 전달

병렬성과 공유 가변 데이터

자바 함수

메서드 레퍼런스

    File[] hiddenFiles = new File(".").listFiles(new FileFilter() {
    	public boolean accept(File file) {
    		return file.isHidden();
    	}
    });

람다: 익명 함수

스트림

    Map<Currency, List<Transaction>> transactionsByCurrencies = new HashMap<>();
    
    for (Transaction transaction : transactions) {
    	if (transaction.getPrice() > 1000) {
    		Currency currency = transaction.getCurrency();
    		List<Transaction> transactionsForCurrency = transactionsByCurrencies.get(currency);
    		if (transactionsForCurrency == null) {
    			transactionsForCurrency = new ArrayList<>();
    			transactionsByCurrencies.put(currency, transactionsForCurrency);
    		}
    		transactionsForCurrency.add(transaction);
    	}
    }

디폴트 메서드

함수형 프로그래밍의 핵심 아이디어