가운데 글자 가져오기 Lv. 1

박영준·2022년 11월 21일
0

코딩테스트

목록 보기
3/300
class Solution {
    public String solution(String s) {
        String answer = "";
        return answer;
    }
}

해결법

방법 1

class Solution {
    public String solution(String s) {
        String answer = "";
        
        //문자열 s의 길이가 짝수면
        if (s.length() % 2 == 0) {
            answer = s.substring (s.length()/2 - 1, s.length()/2 + 1);
        // s의 길이가 홀수라면    
        } else {
            answer = s.substring (s.length()/2, s.length()/2 + 1);
        }
        
        return answer;
    }
}
  • length() : 문자열의 길이

  • substring(시작위치, 끝위치) : 시작위치 ~ 끝위치-1 까지 (주의! 인덱스는 0부터 시작한다)

    • 시작 인덱스는 포함O. 끝 인덱스는 포함X

    • 마지막도 포함하고 싶다면 끝위치+1 필요

      (예시) 문자열 길이 6 인 경우, 0 1 2 3 4 5 --> 6/2 = 3 이므로
      짝수 --> 2, 3

      (예시) 문자열 길이 5 인 경우, 0 1 2 3 4 --> 5/2 = 2 이므로
      홀수 --> 2, 2

    • substring

      String str = "ABCDEFG"; //대상 문자열
      //A=0 B=1 C=2 D=3 E=4 F=5 G=6의 index를 가진다.
      
      str.substring(3); 
      //substring(시작위치) 결과값 = DEFG
      
      str.substring(3, 6); 
      //substring(시작위치,끝위치) 결과값 = DEF
  • answer = String.valueOf(s.charAt(s.length()/2))

    • substring 대신, 해당 문자를 charAt로 뽑아내서 string 으로 변환하는 방법

가운데 글자 가져오기 Lv. 1

profile
개발자로 거듭나기!

0개의 댓글