300x250
✍️ Map to List @AllArgsConstructor @ToString public class Member { private int id; private String name; } Map.keySet() : Key 값들을 Set으로 반환 Map.values() : Value 값들을 Collection으로 반환 1. Constructor Map map = new HashMap(); map.put(1, "이말년"); map.put(2, "침착맨"); map.put(3, "주호민"); List ids = new ArrayList(map.keySet()); System.out.println(ids); // [1, 2, 3] List names = new ArrayList(map.values()); Sy..
✍️ Set to Map 보통 Set을 Map으로 바꾸는 작업은 Primitive 타입보단 Class 타입에 많이 사용하는 듯하다. @Getter @AllArgsConstructor @ToString public class Member { private int id; private String name; } 1. Java 8 Stream API Member Id가 Key, Member name이 Value가 되도록 매핑할 수 있다. Set memberSet = new HashSet(); memberSet.add(new Member(1, "갱플랭크")); memberSet.add(new Member(2, "카밀")); memberSet.add(new Member(3, "클레드")); Map idToName..
✍️ Set to List @Getter @AllArgsConstructor @ToString public class Member { private int id; private String name; } 1. Java 8 Stream API Set memberSet = new HashSet(); memberSet.add(new Member(1, "침착맨")); memberSet.add(new Member(2, "주호민")); memberSet.add(new Member(3, "김풍")); List memberList = memberSet.stream().collect(Collectors.toList()); System.out.println(memberList); // [Member(id=1, name=침..
✍️ List to Map @Getter @AllArgsConstructor public class MemberGrade { private String name; private String subject; private int grade; } 1. Simple Loop List memberGrades = new ArrayList(); memberGrades.add(new MemberGrade("침착맨", "수학", 100)); memberGrades.add(new MemberGrade("이말년", "수학", 90)); memberGrades.add(new MemberGrade("주호민", "수학", 80)); Map gradeMap = new HashMap(); for (MemberGrade mg : m..
✍️ List to Set 1. Java 8 Stream API List integerList = Arrays.asList(1, 1, 2, 3, 2, 1); Set integerSet = integerList.stream().collect(Collectors.toSet()); // [1, 2, 3] 2. Constructor List integerList = Arrays.asList(1, 1, 2, 3, 2, 1); Set integerSet = new HashSet(integerList); // [1, 2, 3] 3. addAll List integerList = Arrays.asList(1, 1, 2, 3, 2, 1); Set integerSet = new HashSet(); integerSet.ad..
[구조 패턴] Chapter 6-1. Adapter Pattern : 패턴 소개 코드 설명은 이전 포스팅을 참조 ✍️ 어댑터 패턴, 적용하기 본 포스팅에선 어댑티와 클라이언트의 간극을 어댑터로 메꾸는 코드를 작성해 소개할 생각입니다. 예시 코드에서 클라이언트 코드는 LoginHandler에 해당하고, 클라이언트가 사용하는 UserDetails와 UserDetailsService는 Target interface에 해당한다. public class LoginHandler { private UserDetailsService userDetailsService; public LoginHandler(UserDetailsService userDetailsService){ this.userDetailsService =..