본문 바로가기

프로그래밍/자바

[JAVA] 코딩 테스트 전 JAVA 문법 정리

 

IDE 사용 금지 코딩 테스트 용 자주 사용하는 문법 정리

 

라이브러리

import java.util.*;
import java.io.*;

 

Array

int arr[] = {1, 2, 3, 4, 5};

// 오름차순 정렬
Arrays.sort(arr);

// 내림차순 정렬
Arrays.sort(arr, Collections.reverseOrder());

// 배열 -> 리스트
List list = Arrays.asList(arr);

 

length

// 문자열
String s;
int len = s.length();

// 배열
int[] arr = new int[3];
int arr_len = arr.length;

// 리스트
ArrayList<Integer> list = new ArrayList<>();
int list_len = list.size();

 

Iterator

Set<Integer> set = new HashSet<>();

Iterator it = set.iterator();
while(it.hasNext()) {
	System.out.println(it.next());
}

 

Queue

Queue<Integer> queue = new ArrayDeque<>();

queue.offer(1);
queue.poll();
queue.clear();
queue.isEmpty();

// 우선순위 큐
PriorityQueue<Integer> pq = PriorityQueue<>(new Comparator<Integer>() {
    @Override
    public int compare(Integer o1, Integer o2) {
    	return Integer.compare(o1,o2)
    }
});

// 람다식
PriorityQueue<Integer> pq = PriorityQueue<>((o1, o2) -> Integer.compare(o1,o2))


// 클래스 사용 시
public class Node implements Comparable<Node>{
	int x, y;

    @Override
    public int compareTo(Node o) {
        return Integer.compare(this.x, o.x)
    }
}

PriorityQueue<Node> pq = PriorityQueue<>();

 

Sort Comparator


ArrayList<Integer> list = new ArrayList<>();
Integer[] num = new Integer[N]; // wrapper class 사용

// 오름차순 정렬
Collections.sort(list, Comparator.naturalOrder());
// 내림차순 정렬
Collections.sort(list, Comparator.reversOrder());

// Comparator 구현
// Collection Sort
Collections.sort(list, new Comparator<Integer>() {
   @Override
   public int compare(Integer o1, Integer o2) {
      if(o1 < o2) {
           return -1; // 왼쪽에 위치해야 됨
      } else if(o1 == o2) {
           return 0;
      } else {
           return 1; // 오른쪽에 위치해야 됨
      }
   }
});

// Array Sort
Arrays.sort(num, new Comparator<Integer>() {
  @Override
  public int compare(Integer o1, Integer o2) {
     return Integer.compare(o1, o2);
  }
});

 

클래스 

class Node {
	int x, y;
    public Node(int x,int y) {
    	this.x = x;
        this.y = y;
    }
}


// Comparable
class Node implements Comparable<Node>{
	int x, y;
    int dist;
    public Node(int x,int y) {
    	this.x = x;
        this.y = y;
    }
   	
    @Override
    public int compareTo(Node o) {
    	return Integer.compare(this.dist, o.dist);
    }
}
Recent Posts
Popular Posts