본문 바로가기
728x90
반응형

list9

[Java] 두 개의 List를 stream을 사용해서 비교하기 List를 비교하는 방법은 여러가지가 있다. 오늘은 java8부터 제공하는 stream을 사용해서 비교하는 방법을 알아보려고 한다. 예제1. List 2개를 각각 비교해 중복 되지 않은 값 찾기 void listTest() { List oldList = Arrays.asList("1", "2", "3", "4"); List newList = Arrays.asList("3", "4", "5", "6"); List resultList1 = oldList.stream() .filter(old -> newList.stream().noneMatch(Predicate.isEqual(old))) .collect(Collectors.toList()); System.out.println(resultList1); // [.. 2021. 10. 28.
Java 개발자 수업 91일차 - 스트림(Stream) 스트림(Stream) 스트림(Stream) - 자바의 스트림에는 대표적인 2가지 스트림이 있는데, 입출력 스트림과, Java 8(JDK1.8)에서 제공하는 스트림이다. 1) 입출력 스트림: 파일 입출력, 콘솔 입출력, 네트워크 입출력 2) 스트림: Java 8(JDK1.8), 배열/컬렉션의 탐색을 지원, 람다식 사용 [ 스트림 얻어오기 ] 1) 순수 배열 2) 컬렉션 3) 숫자범위 4) 파일 5) 디렉토리(폴더) [ 예제1 - 순수 배열/컬렉션으로부터 스트림 얻어오기 ] - for문 vs 향상된 for문 vs iterator vs 스트림 // 순수배열 int[] nums = { 1, 8, 2, 3, 5, 9, 6, 4, 7 }; // 컬렉션 ArrayList ArrayList nums2 = new Arr.. 2021. 8. 7.
HTML 개발자 수업 50일차 - body 1. body 1. body [ 정의 ] - 출력 내용을 담고 있는 최상위 태그 - 혼합형, 쌍 태그 - 자식: 태그 or PCDATA [ 속성 ] - bgcolor: 배경색 - background: 배경 이미지 [ 제목 태그, ] - heading, 문서의 제목을 생성하는 태그 - n: 1 ~ 6 (중요도의 차이) - 제목이 눈에 보이는 크기가 중요한게 아니라, 제목이 가지는 중요도가 중요하다. - 쌍 태그 - 권장사항: h1부터 사용한다. 중간부터 사용 금지!! 문서의 가독성 저하 검색 엔진의 수집 대상 -> h1부터 탐색 제목입니다. 제목입니다. 제목입니다. 제목입니다. 제목입니다. 제목입니다. [ 수평선 태그, ] - Horizontal Rule, 수평바, 컨텐츠 구분자 - 문단과 문단을 구분하는.. 2021. 6. 8.
JAVA 개발자 수업 29일차 - TreeSet, TreeMap 1. TreeSet 2. TreeMap 1. TreeSet [정의] - 이진 검색 트리(binary search tree)라는 자료구조의 형태로 저장하는 컬렉션 클래스이다. - 이진 검색 트리는 정렬, 검색에 높은 성능을 보이는 자료구조이다. - TreeSet은 이진 검색트리의 성능을 향상 시킨 '레드-블랙 트리(Red-Black tree)'로 구현 되어있다. - Set인터페이스를 구현했으므로, 중복된 데이터의 저장을 허용하지 않으며, 정렬된 위치에 저장하므로 저장 순서를 유지하지도 않는다. [이진 검색 트리(binary search tree)] - 모든 노드는 최대 2개의 자식노드를 가질 수 있다. - 왼쪽 자식 노드의 값은 부모노드의 값보다 작고 오른쪽 자식 노드의 값은 부모노드의 값보다 커야한다. .. 2021. 5. 7.
JAVA 개발자 수업 28일차 - HashSet 1. HashSet 1. HashSet [정의] - Set인터페이스를 구현한 가장 대표적인 컬렉션 - 순서가 없는 배열이다. --> 방 번호가 존재하지않으며, 첨자(index)를 사용하지 않는다. - 요소가 중복값을 가질 수 없다. [ArrayList와 HashSet의 비교1] ArrayList list = new ArrayList(); HashSet set = new HashSet(); //ArrayList & HashSet 데이터 추가 list.add("사과"); list.add("딸기"); list.add("바나나"); list.add("딸기"); set.add("사과"); set.add("딸기"); set.add("바나나"); set.add("딸기"); System.out.println("Arra.. 2021. 5. 6.
JAVA 개발자 수업 27일차 - 연결 리스트(LinkedList), iterator 1. 연결 리스트(LinkedList) 2. iterator 1. 연결 리스트(LinkedList) [정의] - 각 Node가 데이터와 포인터를 가지고 한 줄로 연결되어 있는 방식의 자료구조. - 데이터를 담고 있는 Node들이 연결되어 있고, Node의 포인터가 이전 노드와 다음 노드와의 연결을 담당합니다. - Node는 LinkedList에 객체를 추가하거나 삭제하면 앞뒤 링크만 변경되고 나머지 링크는 변경되지 않습니다. - List 인터페이스를 구현했기때문에 ArrayList와 사용법 유사(내부 구조는 다르다.) [ArrayList & LinkedList Append(추가) 비교] ArrayList arr = new ArraryList(); LinkedList list = new LinkedList.. 2021. 5. 4.
728x90
반응형