🎮 Unity 개발/C#

TypeCasting 형변환자

gameuiux 2023. 8. 29. 16:07
728x90
반응형

TypeCasting 형변환자

형변환자 - 서로 다른 자료형으로 바꾸는 것 (정수 실수 문자열로 각각)


// 정수형 -> 실수형
// int to double
double time_d = (double) time;

// 실수형 -> 정수형
// double to int
time = (int) time_d; // int는 소수점 버려짐

// 정수형, 실수형 -> 문자열
// int, double to string
string time_str = time.ToString();
Debug.Log(time_str); // "8"
string time_d_str = time_d.ToString();
Debug.Log(time_d_str); // "8.9"

// 문자열 -> 정수형, 실수형
// string to int, double
time = int.Parse("12");
// time = int.Parse("twelve"); // Error
time_d = double.Parse("12.34");

 

코드

public class _05_TypeCasting : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        int time = 10;
        Debug.Log(time); // 10

        time = time - 1;
        Debug.Log(time); // 9

        // time = time - 0.1;
        // Error - int는 정수만 사용

        // 정수형 -> 실수형
        // int to double
        double time_d = (double) time;
        Debug.Log(time_d); // 9.0

        time_d = time_d - 0.1;
        Debug.Log(time_d); // 8.9

        // 실수형 -> 정수형
        // double to int
        time = (int) time_d;
        Debug.Log(time); // 8 - 소수점 버려짐

        // 정수형, 실수형 -> 문자열
        // int, double to string
        string time_str = time.ToString();
        Debug.Log(time_str); // "8"

        string time_d_str = time_d.ToString();
        Debug.Log(time_d_str); // "8.9"

        // 문자열 -> 정수형, 실수형
        // string to int, double
        time = int.Parse("12");
        Debug.Log(time); // 12

        // time = int.Parse("twelve");
        // Error

        time_d = double.Parse("12.34");
        Debug.Log(time_d);

    }

    // Update is called once per frame
    void Update()
    {
        
    }
}

 

 

결과

 

형변환자 사용에 따른 결과가 출력된 모습

 

728x90
반응형