1. 문제
String s의 가운데 글자를 반환하는 함수, solution을 만들어야한다. 단, 단어의 길이가 짝수라면 가운데 두글자를 홀수라면 가운데 한 글자를 반환한다.
2. 제한
s는 길이가 1 이상, 100이하인 스트링입니다.
3. 정답
class Solution {
public String solution(String s) {
String answer;
int length = s.length();
if (length % 2 == 0) {
answer = s.substring((length/2 - 1), (length/2) + 1);
}
else {
answer = String.valueOf(s.charAt(length/2));
}
return answer;
}
}
4. 설명
4-1. .length() 함수를 사용해서 String s의 길이를 잰다.
4-2. 만약 String s의 길이가 짝수라면 .substring()함수를 사용하여 가운데 두글자를 뽑아낸다.
4-3. 만약 String s의 길이가 홀수라면 .charAt()함수를 사용하여 가운데 한글자를 뽑아내고 이를 다시 .valueOf()함수를 사용해 String형으로 변환한다.
4-4. answer값을 출력한다.
5. 참고
5-1. .length 속성은 배열의 길이를 잴 때 사용한다. .length() 내장함수는 String의 길이를 잰다.
5-2. 예를 들어 .substring(2)는 String의 2번째 인자 이후를 모두 출력하는 함수이다. .substring(2,4)는 String의 2번째 인자부터 4번째 인자의 바로 직전 인자(3)까지 출력한다.
5-3. .charAt()함수는 String의 특정 문자를 뽑아내는 함수로 당연히 String에서 Char형으로 자료형이 바뀐다. .valueOf()함수는 입력받은 매개변수를 원하는 자료형으로 바꿔주는 함수이다. 예를들면 String.valueOf('A')는 A를 String으로 바꿔준다.
'알고리즘 > 프로그래머스' 카테고리의 다른 글
문자열을 정수로 가져오기(JAVA) (0) | 2022.01.15 |
---|---|
음양더하기(JAVA) (0) | 2022.01.15 |
두 정수 사이의 합(JAVA) (0) | 2022.01.14 |
짝수와 홀수(JAVA) (0) | 2022.01.14 |
직사각형 별찍기(JAVA) (0) | 2022.01.14 |