게임 개발/C#
C# 에서 문자열을 반복하는 가장 간단한 방법 - new string
UniCoti(유니코티)
2024. 11. 3. 22:24
반응형
별 찍기 같은 문제에서, 띄어쓰기나 별을 여러 번 사용해야 하는 경우가 나온다.
만약에 파이썬에서 * 하나를 가지고 ***을 만들어야 한다면 어떻게 표현할까?
star = "*"
print(star*3)
뭐 아마도 이런 식으로 3번 복사를 하지 않을까 싶다.
하지만 안타깝게도, C#에서는 문자열에 곱연산을 지원하지 않는다.
그럼 뭐... 반복문이라도 써야 하는 것일까?
string star = "*";
string star3 = "";
for(int i = 0; i < 3; i++) {
star3 += star;
}
Console.WriteLine(star3);
이렇게라도 표현해야 할까..?
다행히도, C#에는 문자를 반복하기 위한 기능인 new string이 있다.
일반적으로 new를 통해서 새로운 string 객체를 생성하는 것이지만
뒤쪽에 파라미터가 하나 더 입력될 수 있게 되어 있는데, 이게 반복을 의미한다.
string star = "*"
Console.WriteLine(new string(star, 3));
따라서 이렇게 간단한 식으로 사용할 수 있게 된다.
한마디로 정리하자면 다음과 같다.
new string(a, b) -> a 문자를 b만큼 반복한 새로운 문자.
이걸 이용해서 문자열 반복을 쉽게 표현하면 된다.
여기까지 new string에서 두번째 파라미터에 대해 알아봤다.
코딩 테스트는 많이 안하고 프로젝트 위주로 해서 그런가 처음 알게 된 내용이다.
근데 이것도 실제 프로젝트에서 많이 쓰이까 싶고 그냥 코딩 테스트에서 많이 쓸 것 같다.
그래도 오랜만에 코딩 테스트로 새로운 지식을 얻게 되어서 기분은 좋은 것 같다.
이상으로 도움이 되었길 바라며,
끝.
반응형