공부한 내용
List
순차적으로 추가/삭제하는 경우에는 ArrayList는 LinkedList보다 빠르다
중간에 Data를 추가/삭제하는 경우에는 LinkedList가 ArrayList보다 빠르다
Queue
먼저 들어온 요소가 먼저 나가는 (FIFO, First-In-First-Out) 순서를 가진 컬렉션입니다. 데이터의 추가는 뒤쪽에서 이루어지고, 추출은 앞쪽에서 이루어진다.
Set
데이터의 순서는 보장되지 않으며, 중복된 값을 추가하려고 하면 기존 값이 유지되고, 새 값은 무시
Map
키의 중복 저장이 허용되지 않습니다. 만약 동일한 키로 데이터를 저장하려고 하면, 기존 키에 대응하는 값이 새 값으로 갱신
Checked Exception: 컴파일 시점에 체크되는 예외입니다. 이 예외들은 반드시 try-catch 블록으로 처리하거나, 메소드 선언부에 throws
키워드를 사용해 명시적으로 선언해야 합니다. 예를 들어, IOException
이 있다.
Unchecked Exception (Runtime Exception): 실행 시점에 발생하며, 컴파일러가 강제하지 않습니다. 주로 프로그래밍 실수에서 기인하며, NullPointerException
, ArrayIndexOutOfBoundsException
등이 있다.
public static int getPower(int number) {
int result = number * number;
return result;
// return number * number;
}
public static int getPower(String strNumber) {
int number = Integer.parseInt(strNumber);
return number * number;
}
public static int getPower(int number, int exponent) {
int result = 1;
for (int i = 0; i < exponent; i++) {
result *= number;
}
return result;
}
public static void main(String[] args) {
System.out.println(getPower(3));
System.out.println(getPower("4"));
System.out.println(getPower(3, 3));
}
public static void main(String[] args) {
String name = "박준영";
String id = "971234-1234567";
String phone = "010-1234-5678";
System.out.println("이름 : " + getHiddenData(name, 1));
System.out.println("주민등록번호 : " + getHiddenData(id, 8));
System.out.println("전화번호 : " + getHiddenData(phone, 9));
}
public static String getHiddenData(String data, int index) {
String getHiddenData = data.substring(0, index);
for (int i = index; i < data.length(); i++) {
getHiddenData += "*";
}
return getHiddenData;
}
private : 해당 클래스 내에서만 접근 가능
public : 모든 클래스에서 접근 가능
default : (아무것도 적지 않았을 때) 같은 패키지 내에서만 접근 가능
protected : 같은 패키지 내에서, 다른 패키지인 경우 자식 클래스에서 접근 가능
참고자료