728x90 반응형 java129 알아두면 좋은 for, switch 자바로 소스코드를 작성하다 보면, for문(반복문)이나 switch(조건문) 등의 코드를 작성하게 됩니다.해당 코드들을 편리하게 사용하기 위한 방법들에 대해 이야기해보고자 합니다. for문for문에 대해서는 일반적으로 해당 방식으로 사용합니다.ArrayList arr = new ArrayList():int sum = 0;for(int i = 0; i 굳이 i라는 변수를 for문내에서 말고는 사용하지 않은 경우, 특정 컬렉션들의 값들을 전부 출력하는 경우에는 더 효율적은 foreach문이 존재합니다. foreach문은 해당 방식으로 사용이 가능합니다.ArrayList arr = new ArrayList();int sum = 0;for(int a : arr) { sum += a;} switch문기본적으로 j.. 2024. 6. 2. heap vs TreeMap<key, list> treemap());vsPriorityQueueNode(String, String); 과연 어느게 더 메모리를 적게 먹고, 시간을 적게 소요할까요? 코드를 작성하는 와중에 단순 PriorityQueue에 데이터를 넣다보면, java heap memory error가 발생할 거 같다는 생각을 하게 되었습니다. 간단한 이유로는하나의 바구니에 데이터를 모두 담는가 vs 여러 바구니에 나눠서 담는가 에 대하여 생각해보면 당연 후자가 더 효율적이라고 생각했기 때문입니다. 이를 증명하기 위하여 하나의 테스트과정을 거치게 되었습니다. Map의 소스는 이러합니다.Map> map = new TreeMap();for(int i = 0; i ()); for(int j = 0; j PriorityQueue의 소스는 이러합니.. 2024. 5. 19. .yaml 파일 수정하기 기본적으로 .yaml파일을 읽어오는 방법은 2가지가 존재합니다.1. class를 활용하여 값을 저장하기2. new Yaml()을 활용해서 map형태로 받아오기 class를 활용하여 가져오기해당 방식을 사용하기 위해서는 yaml파일에 저장되어 있는 1step의 값들로 이루어진 class가 필요힙니다. a: b: c:d: e: f: 해당 형식으로 이루어진 yaml파일을 읽어오기 위해서는@Getter@Setterclass Node{ static A a; static D d; public Node(A a, D d){ this.a = a; this.d = d; }}해당 형식으로 된 class와 A와 D에 해당하는 class에 각각 b,c와 e,.. 2024. 5. 12. Map<String, List<String>> 관련 clear() 자바에서 특정 key에 대한 value로 list를 지정하여 해당 key에 대하여 값들을 모아두는 형태로 코드를 작성하는 경우가 있습니다. Map map = new HashMap(); 이런 경우 GC가 발생하게 된다면 어떻게 될까요? 값들을 저장해서 계속 사용한다면 괜찮겠지만, 이렇게 만들어두고 값을 전달한 후, 더이상 사용하지 않는 경우에서 gc가 발생할 경우? 이런 형태로 해당 값이 사용중인지 확인하는 단계를 거치게 될 것입니다. '그치만 값 전달 후 map.clear()를 통해 map을 비워버리면? gc는 해당 map이 바로 사용하지 않는 상태라는 것을 확인하여 지우는데 오랜 시간이 걸리지 않을까?' 라는 생각을 하게 되었습니다. map.clear()를 하면 gc가 발동하기 전 실제 프로그램 속도에.. 2024. 2. 26. 이전 1 ··· 3 4 5 6 7 8 9 ··· 33 다음 728x90 반응형