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

말랑이·2025년 2월 1일
0

JAVA

목록 보기
13/13

1. String 관련 메서드

String str = "mallang";

// 길이 확인
str.length();

// 빈 문자열 확인
str.isEmpty();

// 문자 찾기
str.charAt(0);			// 'm' 문자 반환
str.indexOf("a");		// 0 인덱스 반환
str.lastIndexOf("l");	// 'l' 마지막으로 문자가 속한 인덱스 반환

// 문자 자르기
str.substring(1, 3);	// 'al' 문자열 반환
str.substring(3);		// 'mal' 문자열 반환

// 문자 치환
str.replace('m', 'b');

// 정규식 문자 치환
str.replaceAll("정규식", "정규식");

// 여러문자 중 첫번째만 치환
str.replaceFirst('l', 'a');

// 문자 동일여부 판단
str.equals("mallang");

// 문자 비교
/* str = 문자열 -> 0반환
   str <(사전 순 앞) 문자열 -> -1반환
   str >(사전 순 뒤) 문자열 -> 1반환
   str과 문자열이 마지막 문자만 다르면 -> 마지막 문자의 사전순 차이 반환 */
str.compareTo("mallana");		// 1반환

// 문자 포함여부 판단
str.contains("mal");

// 문자열 분리
str.split(" ");		// 공백으로 구분된 문자열을 분리해 String[] 배열로 반환
str.split();		// 띄어쓰기 없는 문자열을 분리해 String[] 배열로 반환

// 문자 앞뒤 공백제거
str.trim();

// 문자 <-> 숫자 변환
Integer.parseInt("100");	// 문자열 "100" -> 숫자 100
Integer.toString(100);		// 숫자 100 -> 문자열 "100"

2. StringBuilder 관련 메서드

String은 한번 만들어지면 문자 추가/삭제가 불가하므로, 변경이 필요한 경우 StringBuilder를 사용함

StringBuilder sb = new StringBuilder();

// 문자열 추가
sb.append("mallang");

// 특정 인덱스에 문자 삽입
sb.insert(1, "l");		// malllang

// 문자열 삭제
sb.delete(0, 2);		// lllang

// 특정 인덱스 문자 삭제
sb.deleteCharAt(0);		// llang

// 특정 인덱스 문자 변경
sb.setCharAt(0, 'm');	// mlang

// 문자열 뒤집기
sb.reverse();			// gnalm

// 문자열 절대길이 줄이기
sb.setLength(2);		// gn

// 문자열 절대길이 늘리기
sb.setLength(4);		// "gn  " -> 뒤가 공백으로 채워짐

3. List 관련 메서드

List<String> list = new ArrayList<>();
List<String> list2 = new ArrayList<>();

// 요소 삽입
list.add("one");

// 특정 인덱스에 요소 삽입
list.add(0, "zero");

// 리스트 병합 (추가되는 리스트가 뒤)
list.addAll(list2);

// 특정 요소의 첫번째&마지막 인덱스 반환
list.indexOf("zero");		// 0
list.lastIndexOf("zero");

// 특정 인덱스의 값 삭제
list.remove(0);

// 첫번째 값 삭제
list.remove("one");

// 리스트 비우기
list.clear();

// 빈 리스트 확인
list.isEmpty();

// 리스트 길이
list.size();

// 리스트 특정요소 포함여부 체크
list.contains("one");

// 람다식을 사용한 요소 제거
list.removeIf(x -> x % 2 == 0)	// 짝수 모두 제거

4. Array to List / List to Array (배열 <-> 리스트)

// 문자열 타입 배열 -> List 변환
String[] strArr = {"apple", "banana", "lemon"};
List<String> list = new ArrayList<>(Arrays.asList(strArr));

// List -> 문자열 타입 배열
List<String> list = new ArrayList<>();
String[] strArr = list.toArray(new String[list.size()]);

// 정수 배열 -> List
int[] intArr = {1, 2, 3, 4};
List<Integer> list = new ArrayList<>(Arrays.asList(intArr));

// List -> 정수 배열
List<Integer> list = new ArrayList<>();
int[] intArr = list.stream().mapToInt(x -> x).toArray();
profile
🐰 I'm Sunyeon-Jeong, mallang

1개의 댓글

comment-user-thumbnail
2025년 2월 12일
답글 달기