본문 바로가기

자바(JAVA)
(52)
[자바(Java)] Comparator와 Comparable - 컬렉션을 정렬하는 데 필요한 메서드를 정의한 인터페이스 - 두 객체의 비교 결과를 반환하도록 작성해야 한다.(같으면 0, 비교하는 값보다 작으면 음수, 크면 양수를 반환) - 오름차순: 왼쪽 값이 클 때 자리 바꿈. - 내림차순: 오른쪽 값이 클 때 자리 바꿈. - Comparator : 기본 정렬 기준 외에 다른 기준으로 정렬하고자 할 때 사용. └ compare(Object o1, Object o2); //o1, o2 두 객체를 비교 - Comparable : 기본 정렬기준을 구현하는 데 사용. └ compareTo(Object o); // 주어진 객체를 자신과 비교 - import java.util.Arrays; - import java.util.Comparator; // Comparator -..
[자바(Java)] Arrays - Arrays 클래스에는 배열을 다루는 데 유용한 메서드가 정의되어 있다. - Arrays에 정의된 메서드는 모두 static 메서드! - import java.util.Arrays; import java.util.Arrays; public class Ex09 { public static void main(String[] args) { int[] arr = {0,1,2,3,4}; System.out.println("arr = " + Arrays.toString(arr)); int[] arr2 = Arrays.copyOf(arr, 3); int[] arr3 = Arrays.copyOf(arr, arr.length); int[] arr4 = Arrays.copyOf(arr, 7); int[] arr5 = ..
[자바(Java)] Iterator // Iterator: 컬렉션에 저장된 요소들을 읽어오는 방법을 표준화한 것. - import java.util.Iterator; - 생성 및 선언 Collection c = new ArrayList(); //다른 컬렉션으로 변경 가능 Iterator it = c.iterator import java.util.Collection; import java.util.HashSet; import java.util.Iterator; public class Ex08 { public static void main(String[] args) { Collection c = new HashSet(); c.add("1"); c.add("2"); c.add("3"); c.add("4"); c.add("5"); Iterator..
[자바(Java)] Stack, Queue //Stack - import java.util.Stack; - Stack의 선언 및 생성 Stack st = new Stack(); import java.util.Stack; public class Ex03 { public static void main(String[] args) { Stack st = new Stack(); st.push("0"); st.push("1"); st.push("2"); System.out.println("= Stack ="); while(!st.empty()) { //비어 있지 않을 때까지 반복 System.out.println("맨윗 값 : " + st.peek()); System.out.println("꺼내는 값 : " + st.pop()); } } } - 값 추가 :..
[자바(Java)] ArrayList // ArrayList - import java.util.ArrayList; - 선언 및 생성 ArrayList 리스트명 = new ArrayList(); import java.util.ArrayList; import java.util.Collections; public class Ex01 { public static void main(String[] args) { ArrayList list1 = new ArrayList(10); list1.add(new Integer(5)); //ArrayList에는 객체만 저장 가능! 그냥 5라고 써도 됨(autoboxing) list1.add(new Integer(4)); list1.add(new Integer(2)); list1.add(new Integer(0))..
[자바(Java)] ★객체 지향 언어★ 한 번으로는 바로 이해가 되지 않아서 강의를 다시 들으며 정리했다. 손으로 쓰면서 정리하니 훨씬 더 이해가 잘 됐다.
[자바(Java)] Map //Map - Collection 프레임워크의 일부 - Collection 인터페이스 구현 xx 1. HashMap 2. HashTable 3. LinkedHashMap 4. TreeMap // HashMap - 데이터를 키와 값의 쌍으로 저장. └ 키(key): 컬렉션 내의 키(key) 중에서 유일해야 한다. └ 값(value): 키(key)와 달리 데이터의 중복을 허용한다. - 순서x / 순서를 유지하려면 LinkedHashMap 클래스를 사용하면 된다. - 해싱(hashing) 기법으로 데이터를 저장하여 데이터가 많아도 검색이 빠르다. └ 해싱: 해시함수(hash function)로 해시 테이블(hash table)에 데이터를 저장하고, 해시테이블에서 데이터를 검색. └└ 해시 테이블: 배열과 Li..
[자바(Java)] 2차원 배열, 2차원 리스트 // 2차원 배열 - 선언 및 생성 String[][] 배열명 = new String[m][n]; ~ m,n : 배열의 크기 ~ 기본적으로 모든 요소 값은 0으로 초기화 된다. - 값 넣기, 바꾸기 배열명[index1][index2] = "값"; - 출력 : 2중 반복문을 사용하여 출력해야 한다. 그냥 print로는 안 된다. public class Ex01 { public static void main(String[] args) { String[][] arr = new String[2][2]; arr[0][0] = "a"; arr[0][1] = "b"; arr[1][0] = "c"; arr[1][1] = "d"; for (int i = 0; i < arr.length; i++) { for (int k ..