본문 바로가기
개발/Unity

유니티 C# - 문자열 합치기

by 피로물든딸기 2022. 8. 1.
반응형

Unity 전체 링크

 

string name과 job을 합쳐서 introduce 하는 문자열을 만들어보자.

아래의 introduce1 ~ 7모두 같은 결과가 나온다.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class StringTest : MonoBehaviour
{
    void Start()
    {
        string name = "bloodstrawberry";
        string job = "unemployed";

        string introduce1 = "My Name is " + name + " and job is " + job;
        string introduce2 = $"My Name is {name} and job is {job}";
        string introduce3 = string.Format("My Name is {0} and job is {1}", name, job);
        string introduce4 = string.Concat("My Name is ", name, " and job is ", job);

        string[] strArr = { "My Name is ", name, " and job is ", job };

        string introduce5 = string.Concat(strArr);

        string introduce6 = string.Join("", "My Name is ", name, " and job is ", job);
        string introduce7 = string.Join("", strArr);

        Debug.Log(introduce1);
        Debug.Log(introduce2);
        Debug.Log(introduce3);
        Debug.Log(introduce4);
        Debug.Log(introduce5);
        Debug.Log(introduce6);
        Debug.Log(introduce7);
    }
}

 

간단한 방법은 + 연산자로 더하는 것이다. 하지만 길이가 길어질 수록 가독성이 떨어진다.

string introduce1 = "My Name is " + name + " and job is " + job;

 

두 번째 방법은 자바스크립트의 템플릿 리터럴(Template literals)과 비슷한 방법이다.

C#에서는 문자열 보간(String Interpolation)이라고 한다.

string introduce2 = $"My Name is {name} and job is {job}";
//javascript = 'My Name is ${name} and job is ${job}';

 

세 번째는 Format 메서드를 이용하는 방법이다. C의 printf와 유사하다.

string introduce3 = string.Format("My Name is {0} and job is {1}", name, job);

 

네 번째는 Concat 메서드로 문자들을 연결하는 방법이다.

string introduce4 = string.Concat("My Name is ", name, " and job is ", job);

 

좀 더 편하게 쓰려면 배열을 넘겨주면 된다.

string[] strArr = { "My Name is ", name, " and job is ", job };
string introduce5 = string.Concat(strArr);

 

마지막으로 Join을 이용한 방법이 있다.

 

Join에서 separator를 ""(빈 문자열)로 넘겨주면 문자열을 합치는 효과가 된다.

Concat과 마찬가지로 배열을 넘겨주는 것이 더 간편할 수 있다.

string introduce6 = string.Join("", "My Name is ", name, " and job is ", job);
string introduce7 = string.Join("", strArr);

 

보통은 "," 등을 넘겨서 특정 문자열 사이에 문자(열)을 추가할 때, Join을 자주 사용한다. 

string introduce7 = string.Join(",", strArr);
// -> My Name is ,bloodstrawberry, and job is ,unemployed

 

Unity Plus:

 

Easy 2D, 3D, VR, & AR software for cross-platform development of games and mobile apps. - Unity Store

Have a 2D, 3D, VR, or AR project that needs cross-platform functionality? We can help. Take a look at the easy-to-use Unity Plus real-time dev platform!

store.unity.com

 

Unity Pro:

 

Unity Pro

The complete solutions for professionals to create and operate.

unity.com

 

Unity 프리미엄 학습:

 

Unity Learn

Advance your Unity skills with live sessions and over 750 hours of on-demand learning content designed for creators at every skill level.

unity.com

반응형

댓글