본문 바로가기
728x90
반응형

Java12

문자열 다루기 자바를 활용해서 코드를 작성하다보면 여러번 값을 출력해야 하는 경우가 발생합니다. 이럴 경우 여러번 모두 해당 형식처럼 작성하게 됩니다. for(int i = 0; i < n; i++){ System.out.print(i + " "); } 이럴 경우, 많은 시간을 출력하는데 소요되게 됩니다. 여러번 출력해야 하는 경우 보통 StringBuilder를 선언하여 사용합니다. StringBuilder sb = new StringBuilder(); for(int i = 0; i < n; i++){ sb.append(i).append(" "); } System.out.print(sb); 해당 형식으로 출력하게 되면, 마지막에 공백이 포함되게 됩니다. 그런 경우 .trim()으로도 처리가 가능하지만, 더 좋은 방법.. 2024. 4. 14.
객체 비교 자바에는 다양한 비교 라이브러리들이 존재합니다. 그 중, 객체(문자열) 비교 함수로 equals를 주로 사용합니다. 그러면서 만나는 불편한점 해소 및 잘못사용하고 있었던 방식에 대해 이야기해보고자 합니다. 불편한 점 문자열 비교를 위하여 equals를 사용하다보면, 대문자와 소문자 구별을 못하는 경우가 발생합니다. String s = "abc"; System.out.print(s.equals("ABC")); false String s = "ABC"; System.out.print(s.equals("abc")); false 이럴 경우 보통 저희는 이런식으로 대처합니다. 소문자로 비교하면 비교 대상을 소문자로, 대문자로 비교하면 비교 대상을 대문자로 변경 후 비교하게 됩니다. String s = "ABC";.. 2024. 4. 2.
LinkedHashSet에 대하여 JAVA에는 다양한 Set, Map의 종류가 있습니다. 그 중, 저장 순서를 보장하면서 중복을 제거해주는 HashSet의 역할을 하는 LinkedHashSet이 있습니다. LinkedHashSet set = new LinkedHashSet(); 으로 선언할 수 있고, 일반적인 set과 동일하게 사용하시면 됩니다. 해당 라이브러리를 활용해서 풀 수 있는 문제 https://www.acmicpc.net/problem/13414 13414번: 수강신청 입력 데이터는 표준 입력을 사용한다. 입력은 1개의 테스트 데이터로 구성된다. 입력의 첫 번째 줄에는 과목의 수강 가능 인원 K(1 ≤ K ≤ 100,000)와 학생들이 버튼을 클릭한 순서를 기록한 대기목 www.acmicpc.net ※ 추후 CPP로 구현해 볼.. 2023. 11. 1.
HashSet 내부 이클립스에서 HashSet set = new HashSet(); 을 선언하였을 떄, HashSet 부분을 'Ctrl + 클릭'을 통해서 확인했던 내용을 정리해보고자 적게 되었습니다. HashSet을 활용하는데 어느 정도는 좀 더 알고 활용을 하자는 취지로 정리하였습니다. public HashSet() { map = new HashMap(); } 가장 먼저 보이는 것을 보면, HashSet을 선언하면 HashMap();으로 선언하는 것을 볼 수 있습니다. 이는 추후에 나오는 부분을 보면 이해가 가능합니다. public HashSet(Collection 2022. 9. 24.
728x90
반응형