๋ฐ์ดํฐ ํ์ ์ฒด๊ณ : ๋ค์ํ ๊ธฐ๋ณธ ๋ฐ์ดํฐ ํ์, ๊ทธ๋ฆฌ๊ณ ์ด๊ฒ๋ค์ ์กฐํฉํด์ ๋ณตํฉ ๋ฐ์ดํฐ ํ์์ ๋ง๋ค๊ณ , ์คํ๊ณผ ํ์ด๋ผ๋ ๋๊ฐ์ง ๋ฉ๋ชจ๋ฆฌ ์์ญ์ ํ์ฉํด์ ๋ณ์์ ์๋ช ์ฃผ๊ธฐ์ ๋ฐ๋ผ ๋ณ์๋ฅผ ๊ฐ ํ์์ด๋ ์ฐธ์กฐํ์์ผ๋ก ๋ง๋ค์ด ์ฌ์ฉํ๋ ๊ฒ์ ๋ชจ๋ ์ผ์ปซ๋ ๊ฒ
์์ ๊ฐ์
c#์ ๋ชจ๋ ๋ฐ์ดํฐ ํ์ ์ฒด๊ณ๋ ๊ณต์ฉ ํ์ ์์คํ (common Type System : ๋ชจ๋๊ฐ ํจ๊ป ์ฌ์ฉํ๋ ๋ฐ์ดํฐ ํ์ ์ฒด๊ณ)๋ผ๋
.NET์ ํ์ ์ฒด๊ณ ํ์ค์ ๊ทธ๋๋ก ๋ฐ๋ฅด๊ณ ์๋ค.
์ ๊ดํธ์์ '๋ชจ๋'๋, C#์ ๋น๋กฏํ .NET์ ์ง์ํ๋ ๋ชจ๋ ์ธ์ด(๋ท๋ท ์ธ์ด)๋ฅผ ๋ปํจ.
์ฆ, ๊ณต์ฉ ํ์ ์์คํ ์ ๋ท๋ท ์ธ์ด๋ค์ด๋ผ๋ฉด ๋ฐ๋์ ๋ฐ๋ผ์ผ ํ๋ ๋ฐ์ดํฐ ํ์ ํ์ค์ด๋ค.
๋ง.์๊ฐ ๋ท๋ท "๊ณต์ฉ" ํ์ ์์คํ ์ ๋์ ํ ๊ฐ์ฅ ํฐ ์ด์ ๋ ๋ท๋ท ์ธ์ด๋ค๋ผ๋ฆฌ ์๋ก ํธํ์ฑ์ ๊ฐ๋๋ก ํ๊ธฐ ์ํด์์ด๋ค.
(C#์ด ๊ฐ๊ณ ์๋ ๊ธฐ๋ณธ ๋ฐ์ดํฐ ํ์๊ณผ ๋ณตํฉ ๋ฐ์ดํฐ ํ์, ๊ฐ ํ์๊ณผ ์ฐธ์กฐ ํ์์ ์์ฐ๋ฅด๋
๋ชจ๋ ์ฒด๊ณ๋ ๊ณต์ฉ ํ์ ์์คํ ์ผ๋ก๋ถํฐ ์๋ค.)
using System;
using System.Text;
using static System.Console;
namespace Hello
{
class MainApp
{
static void Main(string[] args)
{
System.Int32 a = 123;
int b = 456;
WriteLine();
WriteLine();
System.String c = "I love you";
string d = "Actually, I hate you";
WriteLine($"Type : {a.GetType()}, Value : {a}");
WriteLine($"Type : {b.GetType()}, Value : {b}");
WriteLine($"Type : {c.GetType()}, Value : {c}");
WriteLine($"Type : {d.GetType()}, Value : {d}");
WriteLine($"Type : {a.GetType().ToString()}, Value : {a}");
WriteLine($"Type : {b.GetType().ToString()}, Value : {b}");
WriteLine($"Type : {c.GetType().ToString()}, Value : {c}");
WriteLine($"Type : {d.GetType().ToString()}, Value : {d}");
}
}
}
์ถ๋ ฅ
Type : System.Int32, Value : 123
Type : System.Int32, Value : 456
Type : System.String, Value : I love you
Type : System.String, Value : Actually, I hate you
Type : System.Int32, Value : 123
Type : System.Int32, Value : 456
Type : System.String, Value : I love you
Type : System.String, Value : Actually, I hate you
์ ์ฝ๋์์ ํด๋น ๋ณ์์ ๋ฐ์ดํฐ ํ์์ ์์๋ด๊ธฐ ์ํด
System.Int32, int, System.String, string ํ์ ๋ณ์์ GetType() ๋ฉ์๋๋ฅผ ํธ์ถํ๊ณ
์ด ํ์ ์ ๋ณด๋ฅผ ๋ฌด๋ฎ์ด๋ก ํ์ํ๊ธฐ ์ํด ToString() ๋ฉ์๋๋ฅผ ํธ์ถํ๋ค.
๋ชจ๋ ๋ฐ์ดํฐํ์์ object ํ์์ผ๋ก๋ถํฐ ์์๋ฐ๋๋ค.
์์์ ๋ฐ์ผ๋ฉด ๋ถ๋ชจ๊ฐ ๊ฐ์ง ๊ฒ์ ๋ชจ๋ ๋ฌผ๋ ค๋ฐ๋๋ค.
GetType()๊ณผ ToString() ๋ฉ์๋๋ ์ฌ์ค System.Int32์ int
System.String๊ณผ string ํ์์ด object ํ์์ผ๋ก๋ถํฐ ๋ฌผ๋ ค๋ฐ์ ๊ฐ์ง๊ณ ์๋ ๊ฒ์ด๋ค.
GetType() ๋ฉ์๋๋ ๊ฐ์ฒด์ ์ค์ ํ์์ ์๋ ค์ฃผ๊ณ ,
ToString() ๋ฉ์๋๋ ๋ณ์์ ๋ฐ์ดํฐ๋ฅผ ๋ฌธ์์ด๋ก ํ์ํ๋ ๊ธฐ๋ฅ์ ๊ฐ์ง๊ณ ์๋ค.
'C# > ์ด๊ฒ์ด C#์ด๋ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
11. null ์กฐ๊ฑด๋ถ ์ฐ์ฐ์ (0) | 2022.02.08 |
---|---|
10. ๋ฌธ์์ด ๋ค๋ฃจ๊ธฐ (0) | 2022.02.07 |
8. Var, Object ํ์๊ณผ์ ์ฐจ์ด? (0) | 2022.02.07 |
7. Nullable, HasValue, Value (0) | 2022.02.07 |
6. ์์์ ์ด๊ฑฐ ํ์ (const, enum): ํ๋ก๊ทธ๋๋จธ์ ์ค์๋ฅผ ๋ง๋ ์ฅ์น (0) | 2022.02.07 |