분류 전체보기(129)
-
spring-boot-devtools 초기 설정 오류
오류 내용Exception in thread "main" java.lang.ClassCastException: class jdk.internal.loader.ClassLoaders$AppClassLoader cannot be cast to class java.net.URLClassLoader (jdk.internal.loader.ClassLoaders$AppClassLoader and java.net.URLClassLoader are in module java.base of loader 'bootstrap') 원인버전 문제적당히 사용량 많은 버전 집어서 썼더니 바로 오류가 터졌다.// // https://mvnrepository.com/artifact/org.springframework.boot/spr..
2024.08.03 -
Collections 유틸
Collections 는 자료구조를 다룰 때 여러 유용한 기능을 제공한다. max(), mix() 이라던가 저장 순서에 관여하는 sort()나,랜덤하게 바꿔주는 shuffle() 이라던가 등의 다양한 기능을 제공한다. of()List, Set, Map 과 같은 자료 구조에는 of() 생성자가 있다.List.of(자료1, 자료2, 자료3);Set.of(자료1, 자료2, 자료3);Map.of(자료1, 자료2, 자료3);of() 를 통해 생성된 자료구조는 '불변성'을 띈다.따라서, of() 메서드의 인자로 처음 값을 넣어 생성한 뒤로는 변경되지 않는다. 불변 자료구조가 필요할 때 적극 활용하자. 가변 자료구조가 필요하다면?자료구조 구현체의 생성자를 호출할 때 인자값으로 of()를 통해 만들어진 자료구조를 넘겨..
2024.08.03 -
정렬 - Comparatable, Comparator
순회에 Iteratable 과 Iterator 인터페이스가 있다면,정렬에는 Comparatable, Comparator 인터페이스가 있다. Comparatablepublic interface Comparable { public int compareTo(T o);}Comparatable은 말 그대로 '비교 가능한(비교 가능하게 해주는)' 인터페이스 이다.compareTo(T o); 메서드를 통해 자기 자신과 타겟의 값을 비교한다. 배열을 사용한 자료 구조에서,Arrays.sort() 메서드 사용 시, 자료구조에 담긴 객체들을 비교하여 정렬해준다.정렬된 순서는 1회용이 아니며, GC 처리될 때까지 유지된다. Collections.sort()배열을 보다, 쉽게 사용할 수 있게 해주는 Collection ..
2024.08.02 -
순회 - Iterable, Iterator
지금까지 List, Set, Map, Queue, Stack 등을 학습 했다.어떤 구현체는 배열, 어떤 구현체는 Node를 자료 저장소로 쓰기에접근 방식 또한 다르다. 데이터를 순회함에 있어, 사용자는 자료 순회만 할 수 있으면 된다.기능은 이미 구현 돼 있다. Iterable 인터페이스public interface Iterable{ Iterator iterator();}자료구조, Integer 등의 일부 래퍼클래스에는 Iteratable 이 구현 돼 있다.Iteratable 인터페이스는 해당 자료구조가 갖는 자료 저장소를 품은 Iterator 을 반환한다. Iterator 인터페이스그리고 이 Iterator는 hasNext(), next() 로 하여금 자료구조에 저장된 다음 데이터를 찾고 이동할 수 있..
2024.08.02 -
Map
Map 을 쌍으로 저장하는 자료 구조 순서 보장 - x중복 - key : 불가- value : 가능 key값을 통해 빠르게 검색이 가능하다. 구현체- Hashmap - LinkedHashMap- TreeMap 등 - Key 중복 시 값 덮어씌워짐put(Key, Value); put(key= 10, value = 100);put(key= 10, value = 1515); 아래와 같이 동일한 key 값으로 서로 다른 값을 넣을 경우,덮어쓰기 되어 key 10의 value 는 1515 가 된다. - HashMap 사용 시 Hashcode(), equals() 구현 필수HashMap 사용 시 Key 값으로 사용될 객체는 Hashcode(), equals() 가 꼭 구현 돼야 함.hash 알고리즘이 사용되는 만..
2024.08.02 -
Set 인터페이스
SetSet은 List와 같이 Collection의 인터페이스를 상속하는 인터페이스이다.중복을 허용하지 않고,순서를 보장하지 해주지 않는다. (TreeSet, LinkedHashSet 은 순서 보장이 가능하다) 종류HashSetTreeSet 등이 있다. HashSet- Hash 알고리즘을 적극적으로 활용한다.ㄴ 따라서, 주요 연산 처리에 빠르다[ O(1) ]. - 파생체로 LinkedHashSet 가 있다.- 순서 보장 필요 없고, 단일성만 띌 집합 자료모음을 다룰 때 유리하다. TreeSet- 트리 구조를 띄고 있다.- 트리 노드는 left, right 노드를 갖는다.ㄴ 특정 데이터 조회에 O(log2) 의 성능을 갖는다.- 좌, 우로 데이터를 추가하기 위한 기준이 필요하다.ㄴ 따라서, TreeSet ..
2024.08.01