본문 바로가기
프로그래머스 코딩테스트 연습

[프로그래머스 코테 C#] Lv0. 문자 리스트를 문자열로 변환하기

by 노재두내 2024. 3. 11.

문자들이 담겨있는 배열 arr가 주어집니다. arr의 원소들을 순서대로 이어 붙인 문자열을 return 하는 solution함수를 작성해 주세요.

제한사항

  • 1 ≤ arr의 길이 ≤ 200
  • arr의 원소는 전부 알파벳 소문자로 이루어진 길이가 1인 문자열입니다.

입출력 예

arrresult

["a","b","c"] "abc"

 


charToArray머 이런거 써야하나 고민했는데 일단은 이렇게 썼다.

using System;

public class Solution {
    public string solution(string[] arr) {
        string answer = "";
        for(int i=0;i<arr.Length;i++){
            answer+=arr[i];
        }
        return answer;
    }
}

근데 테스트 통과 안써두 되나보다


다른 사람 풀이

1. String.Join

using System;

public class Solution {
    public string solution(string[] arr) {
        string answer = "";
        answer = String.Join("", arr);
        return answer;
    }
}

String.Join 메서드

 

각 요소 또는 멤버 사이에 지정된 구분 기호를 사용하여 지정된 배열 요소나 컬렉션 멤버를 연결합니다.

Console.WriteLine(" {0}", String.Join("  ", primes));  => 구분을 공백으로

// 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97

 

Console.WriteLine(String.Join("|", values)); => 구분을 | 으로

// |Cobb|4189|11434|0.366

 

그래서 위에사람 풀이에서는 answer = String.Join("", arr); 라고 공백 없이 썼기 때문에 abc이렇게 나올것이당.

 

 

2. foreach문

using System;

public class Solution {
    public string solution(string[] arr) {
        string answer = "";
        foreach(string s in arr)
            answer+=s;
        return answer;
    }
}