728x90
반응형
C#에서 지원하는 Parse는 여러가지가 존재한다.
가장 대표적인 예시는 int->string, string->int 정도가 있는데
int->string은 ToString(), System.Convert.ToString()이 있고
string->int는 int.Parse(), int.TryParse()가 있다.
각각의 속도는 어떨까?
using System;
public class Ex : MonoBehaviour
{
List<int> integers = new List<int>();
List<string> strs = new List<string>();
int LoopCount = 100000;
void Start()
{
for(int i = 0; i < LoopCount; i++)
{
integers.Add(i);
strs.Add(i.ToString());
}
}
void Update()
{
for(int i = 0; i < LoopCount; i++)
{
string str_1 = integers[i].ToString();
string str_2 = integers[i].System.Convert.ToString(integers[i]);
int integer_1 = int.Parse(strs[i]);
int integer_2;
int.TryParse(strs[i], out integer_2);
}
}
}
속도를 보면
int->string은 속도가 비슷하거나 뒤죽박죽 하기 때문에 입맛에 따라 쓰면 될 것 같다.
string->int의 경우 int.Parse가 1000회당 0.01ms 정도 느리다. 입맛에 따라 사용해도 되긴 하지만 안전한 코드 사용을 위해 int.TryParse를 사용하는 것을 권장
728x90
반응형
'C# > Unity' 카테고리의 다른 글
[Unity C#] JAVA_HOME 환경 변수 설정 오류 (0) | 2023.12.11 |
---|---|
[Unity C#] 2022 이상 버전 경고 문구 (0) | 2023.12.11 |
[Unity C#] 기술 면접 대비 중급 질문들 (1) | 2023.11.14 |
[Unity C#] 기술 면접 대비 기본 질문들 (0) | 2023.11.14 |
[Unity C#] foreach GC에 대하여 (0) | 2023.11.13 |