STUDY 📖/C#

패스트캠퍼스 챌린지 9일차

@예민한 방구석여포 힘히힘 2021. 9. 14. 23:41
반응형

Ch 03. 데이터란 무엇일까 - 03.기본데이터 3-1

 

 

형 변환

- 데이터 형식을 변경

     - 정수 <-> 실수

     - 문자열 <-> 기본 데이터형

 

- 캐스트 연산자: '()'

- Tostring()

-Parse()

-Convert..~

 

 

_024_Data_cast

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

/*-----------------------------------------------------------------------------
 * Name: _024_Data_cast
 * DESC: cast연산자(  ) 기초   //()가 있으니 cast구나!
-----------------------------------------------------------------------------*/
namespace _024_Data_cast
{
    class Program
    {
        static void Main(string[] args)
        {
            int num = 100;
            double dNum = (double)num;
            Console.WriteLine("num: {0},  dNum: {1}", num, dNum);

            double dNum2 = 12345678912;
            int num2 = (int)dNum2; //큰데이터형을 작은 데이로 변경시 주의!!!
            //int num2 = dNum2; 이렇게 큰 숫자를 캐스트 안하고 하면 오류남!
            Console.WriteLine("dNum2: {0},  num2: {1}", dNum2, num2);
        }
    }
}

 

 

 

 

 

 

 

 

_025_Data_ToString

정수, 실수 -> 스트링 자료형 변환

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

/*-----------------------------------------------------------------------------
 * Name: _025_Data_ToString
 * DESC: ToString 기초
-----------------------------------------------------------------------------*/
namespace _025_Data_ToString
{
    class Program
    {
        static void Main(string[] args)
        {
            int a = 100;
            float b = 3.141593f;
            decimal c = 3.1415926535897932384626433832m;

            string strA = a.ToString();  //"100"
            string strB = b.ToString();  //"3.141593f"
            string strC = c.ToString();  //"3.1415926535897932384626433832m"

            Console.WriteLine("a.ToString(): {0}", strA);
            Console.WriteLine("b.ToString(): {0}", strB);
            Console.WriteLine("c.ToString(): {0}", strC);
        }
    }
}

 

 

 

_026_Data_parse

스트링 -> 정수, 실수 자료형 변환

 

 

 

_27_Data_Convert

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

/*-----------------------------------------------------------------------------
 * Name: _027_Data_Convert
 * DESC: Convert 기초, ToString, Parse
-----------------------------------------------------------------------------*/
namespace _027_Data_Convert
{
    class Program
    {
        static void Main(string[] args)
        {
            int a = 100;
            float b = 3.141593f;
            decimal c = 3.1415926535897932384626433832m;

            string strA = a.ToString();
            string strB = b.ToString();
            string strC = c.ToString();

            Console.WriteLine("a.ToString(): {0}", strA);
            Console.WriteLine("b.ToString(): {0}", strB);
            Console.WriteLine("c.ToString(): {0}", strC);
            Console.WriteLine();

            int parseA = int.Parse(strA);
            float parseB = float.Parse(strB);
            decimal parseC = decimal.Parse(strC);

            Console.WriteLine("int.Parse: {0}", parseA);
            Console.WriteLine("float.Parse: {0}", parseB);
            Console.WriteLine("decimal.Parse: {0}", parseC);
            Console.WriteLine();

            int convertA = Convert.ToInt32(strA);
            float convertB = Convert.ToSingle(strB);
            decimal convertC = Convert.ToDecimal(strC);

            Console.WriteLine("Convert.ToInt32(strA): {0}", convertA);
            Console.WriteLine("Convert.ToSingle(strB): {0}", convertB);
            Console.WriteLine("Convert.ToDecimal(strC): {0}", convertC);
        }
    }
}

앞의 ToString, Parse를 복습하고 마지막에 Convert로 형변환을 진행해준 예제!

 

 

 

이런것들이 어디에 사용할까?  (보통 문자 -> 숫자형)

1. 유저가 input하는 데이터

2. 네트워크와 통신하는 데이터

3. 게임에 사용하는 데이터

 

ex)

     * 로그인 할 때 문자열로 받은 내용을 숫자로 바꿀수도 있고, 

     * 패킷을 사용할 때 문자열로 들어오는 것들을 숫자나 원하는 형으로 변환해주는 작업

     * x,y 좌표가 변경된 캐릭터가 있을 때, 이 캐릭터가 움직이면 다른 캐릭터(유저)들도 움직인것을 봐야한다.

           👉🏼이럴때도 마찬가지로 10,10 값을 문자열 패킷으로 받고 숫자로 형변환하여 인식함.

    .... 등등등

 

 

 

 

 

 

 

 

 

 

 

 

 

* 본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다. * -9일차 아자아자

눈물나는 화요일

 

필수 링크 : https://bit.ly/37BpXiC