프로그래머스/Lv. 0(코딩 기초 트레이닝)

[프로그래머스 코딩테스트] 문자열 섞기(Java)

Sigfriede 2023. 5. 20. 01:00

  문제 설명

  길이가 같은 두 문자열 str1과 str2가 주어집니다.

  두 문자열의 각 문자가 앞에서부터 서로 번갈아가면서 한 번씩 등장하는 문자열을 만들어 return 하는 solution 함수를 완성해 주세요.

 

  제한사항

  • 1 <= str1의 길이 = str2의 길이 <= 10
    • str1과 str2는 알파벳 소문자로 이루어진 문자열입니다.

 

  입출력 예

str1 str2 result
"aaaaa" "bbbbb" "ababababab"
import java.lang.StringBuilder;
class Solution {
    public String solution(String str1, String str2) {
        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < str1.length(); i++) {
            sb.append(str1.charAt(i));
            sb.append(str2.charAt(i));
        }
        String answer = sb.toString();
        return answer;
    }
}

  StringBuilder를 생성합니다.

  for문이 str1의 길이만큼 순회합니다. str2의 길이는 str1과 같으므로 i를 공유할 것입니다.

  append 메소드를 이용하여 각각 str1의 charAt(i)와 str2의 charAt(i)가 StringBuilder에 추가됩니다. for문이 반복되는 동안 두 문자열의 문자가 나란히 추가됩니다.

  answer에 반환하기 전, toString 메소드를 이용하여 메모리상 주소가 아닌 문자열을 올바르게 반환하도록 합니다.