프로그래머스에서 문제를 풀다가 자바에서는 대소문자 비교도를 알고 있으면 좋을 것 같아 기록을 남긴다.
참고한 문제 : 문자열 내림차순으로 배치하기
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
문제와 예시는 다음과 같다.
결론부터 말하면
비교도는 대문자<소문자, A<Z<a<b 이다.
ABCDE...<abcde... 라는 말이다.
좀 의외인긴 했다. 대문자가 더 큰 가치를 가지고 있을 것이라고 생각했는데, 이렇게 또 하나 배우고 간다.
무튼! 문제를 마무리 짓자면,
해당 문제의 설계는 다음과 같다.
1. 문자열 s를 arrS 배열에 저장
2. 저장된 arrS를 오름차순으로 변환
3. 내림차순으로 바꾸기 위해 for문에서 i-- 사용
3-1. 그 값들을 또 다른 arrAnswer에 저장
3-2. String으로 변환
완성 코드
import java.util.Arrays;
class Solution {
public String solution(String s) {
// 소문자>대문자, A<Z<a<b
String answer = "";
char[] arrS = s.toCharArray();
char[] arrAnswer = arrS.clone();
Arrays.sort(arrS);
for (int i=arrS.length-1, j=0; i>=0; i--, j++) {
arrAnswer[j] = arrS[i];
}
answer = String.valueOf(arrAnswer);
return answer;
}
}
*위 방법 외에도 다양한 방법이 있으니 참고만 해주세요 :)
*잘못된 정보가 있다면 댓글로 남겨주시면 더 큰 도움이 될 것 같습니다 :)
'TIL (Today I Learned)' 카테고리의 다른 글
자바) 등차수열 가볍게 알아보자! (0) | 2024.03.26 |
---|---|
자바) 배열을 문자열로 변환하는 방법 (char 배열 포함) (0) | 2024.03.25 |
자바) 문자를 char 타입의 배열로 변환하는 2가지 방법 (0) | 2024.03.25 |
application.properties - mysql.cj.jdbc.Driver 빨간줄 (0) | 2023.11.14 |
TIL) Content type 'application/octet-stream' not supported 에러 (0) | 2023.09.13 |