[C#]Convert.ToInt32() vs int.Parse()

Jagยท2023๋…„ 3์›” 30์ผ
1

C#

๋ชฉ๋ก ๋ณด๊ธฐ
2/5
post-thumbnail

๐Ÿ“ŒConvert.ToInt32()ํ•จ์ˆ˜์™€ int.Parse()ํ•จ์ˆ˜

C#์—์„œ ํŠน์ • ๊ฐ’์„ ์ •์ˆ˜ํ˜•์œผ๋กœ ๋ณ€ํ™˜ํ•˜๊ธฐ ์œ„ํ•ด Convert.ToInt32()ํ•จ์ˆ˜ ๋˜๋Š” int.Parse()ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.


โœ๐Ÿปstringํ˜• ๋ณ€์ˆ˜

๐Ÿ”งConvert.ToInt32()

 string convertStr = "24";
 int b = Convert.ToInt32(convertStr);
 Console.WriteLine(b);
 Console.WriteLine(b.GetType());

๐Ÿ”งint.Parse()

string parseStr = "24";
int a = int.Parse(parseStr);
Console.WriteLine(a);
Console.WriteLine(a.GetType());

ํŠน์ • ๊ฐ’์ด ์žˆ๋Š” stringํ˜• ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ, Type์ด intํ˜•์œผ๋กœ ์ž˜ ๋ณ€ํ™˜๋œ ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


๐Ÿ“ŒConvert.ToInt32()ํ•จ์ˆ˜์™€ int.Parse()ํ•จ์ˆ˜์˜ ์ฐจ์ด์ 

๋‘ ํ•จ์ˆ˜๋Š” null๊ฐ’์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ์‹์ด ๋‹ค๋ฅด๊ณ , charํ˜• ๋ณ€์ˆ˜์˜ ์‚ฌ์šฉ ๊ฐ€๋Šฅ ์—ฌ๋ถ€๊ฐ€ ๋‹ค๋ฆ…๋‹ˆ๋‹ค.


โœ๐Ÿปcharํ˜• ๋ณ€์ˆ˜

๐Ÿ”งConvert.ToInt32()

char convertChr = '8';
int b = Convert.ToInt32(convertChr);
Console.WriteLine(b);
Console.WriteLine(b.GetType());

charํ˜•์˜ ๊ฐ’์ธ 8์ด ASCII์ฝ”๋“œ๋กœ ๋ณ€๊ฒฝ๋˜์–ด ๋ฐ˜ํ™˜๋ฉ๋‹ˆ๋‹ค.

๐Ÿ”งint.Parse()

char parseChr = '8';
int a = int.Parse(parseChr);

int.Parse()ํ•จ์ˆ˜๋Š” charํ˜•์„ stringํ˜•์œผ๋กœ ๋ณ€ํ™˜ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.


โœ๐Ÿปnull๊ฐ’์ด ํ• ๋‹น๋œ stringํ˜• ๋ณ€์ˆ˜

๐Ÿ”งConvert.ToInt32()

string convertNullStr = null;
int b = Convert.ToInt32(convertNullStr);
Console.WriteLine(b);
Console.WriteLine(b.GetType());

Convert.ToInt32()ํ•จ์ˆ˜๋Š” null์˜ ๊ฐ’์„ 0์œผ๋กœ ๋ฐ˜ํ™˜์‹œํ‚ต๋‹ˆ๋‹ค.

๐Ÿ”งint.Parse()

string parseNullStr = null;
int c = int.Parse(parseNullStr);
Console.WriteLine(c);
Console.WriteLine(c.GetType());

int.Parse()๋กœ null์ธ ๊ฐ’์„ ๋ณ€ํ™˜ํ•˜๋ฉด, System.ArgumentNullException ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ”ฅ๊ฒฐ๋ก 

  • int.parse()ํ•จ์ˆ˜๋Š”

    Stringํ˜•๋งŒ ๊ฐ€๋Šฅ charํ˜•์€ ๋ถˆ๊ฐ€๋Šฅ
    ๋ณ€ํ™˜ํ•˜๋ ค๋Š” ๋ณ€์ˆ˜๊ฐ€ ์ •์ˆ˜์ž„์ด ํ™•์‹คํ•  ๋•Œ ์‚ฌ์šฉ
    null๊ฐ’์„ ๋ณ€ํ™˜ํ•˜๋ฉด ArgumentNullException ์˜ˆ์™ธ ๋ฐœ์ƒ
  • Convert.ToInt32()ํ•จ์ˆ˜๋Š”

    String, charํ˜• ๋‘˜๋‹ค ๊ฐ€๋Šฅ
    null๊ฐ’์„ ๋ณ€ํ™˜ํ•˜๋ฉด 0๊ฐ’์„ ๋ฐ˜ํ™˜
profile
C# Unity Engineer

0๊ฐœ์˜ ๋Œ“๊ธ€