이유

<aside> 💡 String은 변경할 수 없는 형식이다.

</aside>


해결법

<aside> 💡 StringBuilder는 변경 가능한 문자열 Class이다.

</aside>


문제가 되는 코드

using System;
 
public class Program
{
    string BadCodeExample() 
    {
        string myString = "";
        
        for (int i = 0; i<20; i++)
        {
            myString += i.ToString() + ", ";
        }
        myString = myString.Remove(myString.Length - 2); // 뒤에 남은 ", " 제거
        return myString;
    }
}

계선된 코드

using System.Text; // StringBuilder 쓰기 위함
using UnityEngine;
 
public class SBTestScript : Monobehaviour
{
    string StringBuilderExample()
    {
        StringBuilder sb = new StringBuilder();
        
        // Append
        for (int i = 0; i<20; i++)
        {
        	sb.Append(i).Append(", ");
        }
        
        return builder.ToString();
    }
    
    void Start()
    {
    	Debug.Log(StringBuilderExample());
    }
}