본문 바로가기

학원/자바

03_리스트, 셋, 큐, 스택, 맵

728x90
반응형

Arrays

Arrays.toString(a)  배열 출력 : 2차원 배열 출력 불가(반복문 한번 써야됨), 형태 변경 불가
a.toString() 배열 일련번호
Arrays.equals(a, b) a, b 배열이 같은 배열인지 판단
int[] b = Arrays.copyOf(a, a.length) a배열 복제(깊은복사)
Arrays.sort(a) 오름차순 정렬(데이터를 다 바꿔버림)
Arrays.sort(arr, (a, b)->b-a) 내림차순 정렬(Integer로 해야됨)
Arrays.fill(arr, 1);  모든 arr 값을 1로 초기화
Arrays.binarySearch
(arr, 0, length, n)

배열 arr의 0 인덱스부터 length-1 인덱스까지 값 n이 위치의 인덱스 반환
없으면 - (삽입 포인트) - 1 반환 (1을 더하고 -1을 곱해주면 들어가야 하는 인덱스 알려줌)
  • 2차원 배열 오름차순 정렬
          Comparator<int[]> c = new Comparator<int[]>() {
              @Override
              public int compare(int[] o1, int[] o2) {
                  if(o1[0]==o2[0]) {
                      return o1[1]-o2[1];
                  }
                  else return o1[0]-o2[0];
              }
          };
  • foreach (확장 for)
      for(int n : list) {System.out.println(n); }

ArrayList

a.add("ab") "ab" 추가
a.contains("ab") "ab" 포함하고 있는지 검사
a.size() 데이터 개수
a.indexOf("마리오") "마리오"의 위치 , 없으면 -1 반환
a.remove("마리오") "마리오" 항목 삭제 (가장 먼저 들어간 "마리오" 삭제)
a.remove(0) 0번 데이터 삭제
a.get(0) 0번 데이터 리턴
a.set(0, "a") 0번 데이터를 "a"로 교체

Collections

Collections.reverst(list) 뒤집기
Collections.shuffle(list) 무작위로 섞기(비복원추출(로또) 할 때 사용하기도 함)
Collections.sort(list) 오름차순정렬
Collections.sort(list, (a,b) -> b-a) 오름차순정렬
list.sort((a, b)->b-a) 내림차순 정렬

Set

set.size()  
set.contains("a")  
set.remove("a")  
저장소 복사 Set intersection = new TreeSet<>(galaxy);
합집합 set1.addAll(set2)
교집합 set1.retainAll(set2)
차집합 set1.removeAll(set2) set1 차 set2

Stack (LIFO)

stack.push("a") "a"를 넣음
stack.peek()  가장 최신 데이터 확인
stack.pop() 가장 최신 데이터 확인+삭제

Queue (FIFO)

Queue<Integer> queue = new LinkedList<>();
queue.add("a") "a"를 넣음
queue.peek() 가장 먼저 넣은 데이터 확인
queue.poll() 확인+추출(삭제)

HashMap<K, V> K : type of keys / V : type of values

a.add() 한 개 추가하는 명령
a.put("key", "value") key/value 세트로 추가하는 명령
a.size()  
a.containsKey("key") key 데이터 확인
a.containsValue("value") value 데이터 확인
a.get("key") key의 value 출력(없는 key값을 넣으면 null 나옴)
a.remove("key") 해당 key를 지우고 value를 반환함
a.keySet() key만 뽑아서 set으로 반환 ex)Set names = items.keySet()
a.entrySet()  Set으로 반환하는 메소드 for(Entry entry : items.entrySet())
a.getOrDefault(key, 0) key가 있으면 value를, 없으면 default값 데이터

 

728x90
반응형

'학원 > 자바' 카테고리의 다른 글

05_파일 입출력  (0) 2023.02.19
04_시간  (0) 2023.02.19
02_정규표현식  (0) 2023.02.19
01_자주쓰는 메서드  (0) 2023.02.18