Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- spring
- AOP
- 스프링
- 김영한
- pointcut
- JDBC
- Exception
- Spring Boot
- 자바
- Servlet
- Android
- QueryDSL
- Greedy
- 그리디
- 스프링 핵심 기능
- transaction
- Proxy
- jpa
- SpringBoot
- 알고리즘
- JPQL
- 스프링 핵심 원리
- db
- kotlin
- Thymeleaf
- http
- 인프런
- springdatajpa
- 백준
- java
Archives
- Today
- Total
개발자되기 프로젝트
Stream활용 예시 본문
1. 문제!
- 여행사에 패키지 상품이 있음.
- 여행 비용
- 15세 이상 : 100만원
- 15세 미만 : 50마원
- 고객 세 명이 패키지 여행 신청 하는 경우, 패키지 여행 비용 계산
- 고객 정보
- CustomerA
- 이름 : A
- 나이 : 40
- 비용 : 100
- CustomerB
- 이름 : B
- 나이 : 20
- 비용 : 100
- CustomerC
- 이름 : C
- 나이 : 10
- 비용 : 50
- CustomerA
2. test
class TravelCustomerTest {
public static void main(String[] args) {
TravelCustomer customerA = new TravelCustomer("A", 40, 100);
TravelCustomer customerB = new TravelCustomer("B", 20, 100);
TravelCustomer customerC = new TravelCustomer("C", 10, 50);
List<TravelCustomer> customers = new ArrayList<>();
customers.add(customerA);
customers.add(customerB);
customers.add(customerC);
System.out.println("고객 명단 출력");
customers.stream().map(c -> c.getName()).forEach(c -> System.out.println(c));
System.out.println("============================");
System.out.println("고객 비용 합계");
//mapToint : int stream으로 반환
int result = customers.stream().mapToInt(c -> c.getPrice()).sum();
System.out.println("비용 합계 : " + result);
System.out.println("============================");
System.out.println("20세 이상 고객");
customers.stream().filter(travelCustomer -> travelCustomer.getAge() >= 20).map(c -> c.getName()).sorted()
.forEach(System.out::println);
System.out.println("============================");
}
}
고객 명단 출력
A
B
C
============================
고객 비용 합계
비용 합계 : 250
============================
20세 이상 고객
A
B
============================
3. GitHub : 211029 Stream,Lambda example
'Java > 다양한 기능' 카테고리의 다른 글
예외 처리와 미루기 (0) | 2021.10.30 |
---|---|
예외 처리 (0) | 2021.10.29 |
reduce() (0) | 2021.10.28 |
객체지향 프로그래밍 vs 람다식 구현 (0) | 2021.10.27 |
Stream (0) | 2021.10.27 |
Comments