안녕하세요!
오늘은 되게 간단해보이는데 생각보다 간단하지 않았던 코딩테스트를 정리해보려고 합니다.
이 문제를 보자마자
- 문자열 → 배열에 넣고 → 배열을 돌려가면서 값 비교? 할까??
- 문자열 → substring으로 하나씩 값 비교?
어떻게 풀어야하지? 위에처럼 생각하다가 구글링의 도움을 받고 밑에 방법처럼 풀어보았습니다.
도움이 많이 되서 정리해봅니다.
1. long 타입을 String 타입으로 변환해줍니다.
: 118372 → "118372"
2. String타입으로 변환된 값을 split메서드를 활용하여 문자열을 잘라서 배열에 넣어줍니다.
: "118372" → ["1", "1", "8", "3", "7", "2"]
cf ) split() 메서드
- 문자열을 매개변수(파라미터)로 받아서 해당 매개변수 기준으로 문자열을 잘라서 배열에 넣어주는 기능을 한다.
- "" : 쌍따옴표 안에 특정문자를 기준으로 잘라줍니다. 공백도 하나의 문자로 취급!!
3. Arrays.sort()로 arr 배열을 오름차순으로 정렬해줍니다.
: ["1", "1", "2", "3", "7", "8"]
4. StringBuilder 객체를 생성하여 append메서드, reverse메서드를 활용해줍니다.
cf ) StringBuilder 객체는 다양한 메서드를 제공하는데 메서드 종류는 이 글 마지막 부분에 정리해놓겠습니다.
5. for문으로 돌면서 잘라줬던 문자열을 append메서드로 문자열을 합쳐줍니다.
: ["1", "1", "2", "3", "7", "8"] → ["112378"]
6. reverse메서드를 활용하여 문자열을 반전시켜줍니다.
: ["112378"] → ["873211"]
7. 문자열을 정수형 Long.valueOf()로 변환시켜주고 반환해줍니다.
: ["873211"] → (long) 873211
cf ) StringBuilder 객체는 다양한 메서드를 제공합니다.
- append메서드 : 문자열 추가
- insert메서드 : 문자열 삽입
- delete메서드 : 문자열 삭제
- replace메서드 : 문자열 변경
- reverse메서드 : 문자열 반전
- 길이와 용량 확인
오늘의 요약
StringBuilder 객체는 다양한 메서드를 제공해줍니다.
'TIL(Today I Learned)' 카테고리의 다른 글
[Java/코딩테스트] 콜라츠 추측 (0) | 2024.08.06 |
---|---|
[Java/코딩테스트] 하샤드 수 판별 (0) | 2024.08.05 |
[Java] 정수형 → 문자열 / 문자열 → 정수형 변환 정리 (0) | 2024.08.01 |
[Java/코딩테스트] 약수의 합 (0) | 2024.07.31 |
[MYSQL] Limit문(= 상위 n개의 레코드 구하기) (0) | 2024.07.30 |