[C#] κΈ°λ³Έ, λ³μ + var
π‘ C#μ μ»΄νμΌκ³Ό μΈν°ν리ν°μ μ₯μ μ λͺ¨λ κ°μΆ νμ΄λΈλ¦¬λ μΈμ΄λ€.
μ»΄νμΌλ¬ (compiler) : νλ‘κ·Έλ¨ μμ€ μ½λλ₯Ό μ»΄ν¨ν° λ± νλμ¨μ΄κ° μ€νν μ μλ κΈ°κ³ μ½λλ‘ λ³ννλ νλ‘κ·Έλ¨
μ»΄νμΌ (compile) : λ³ννλ κ³Όμ
<-> μΈν°νλ¦¬ν° (interpreter) : λ°λ‘ μ»΄νμΌ κ³Όμ μ κ±°μΉμ§ μκ³ μμ€ μ½λλ₯Ό λ°λ‘ ν΄μν΄μ μ€ν
π‘ C#
: λμλ¬Έμ κ΅¬λΆ μΈμ΄
: λ€μμ€νμ΄μ€, ν΄λμ€, Main()λ‘ κ΅¬μ±
π‘ νλ‘κ·Έλ¨ μμ± λ° μ€ν λ¨κ³
.csνμΌμ μ»΄νμΌμ κ±°μ³ μ€ννμΌμΈ .exeλ‘ λ§λ λ€.
β μλκ° μλ λ€λ₯Έ νκ²½μ΄λΌλ©΄ DLLνμΌμ΄ μμ±λλ€.
π‘ μ£Όμ μ΄μ€μΌμ΄ν μνμ€
β ν€λ³΄λμ μλ νΉμ λ¬Έμ μ λ ₯
: νκΈ μμμ μ λ ₯νκ³ νμλ₯Ό λλ₯΄λ©΄ κ° νκΈ μμμ ν΄λΉνλ νΉμ λ¬Έμ 리μ€νΈκ° μΆλ ₯λλ€.
π‘ μ리 νμμ {0}, {1} ...
Console.WriteLine("{0}", "Hello");
=> {0} μ리μ Hello λ겨λ°μ μΆλ ₯
: λ²νΈ μΈλ±μ€λ 0λΆν° μμ
: μΈλ±μ€μ μμ λ€μμ μ§μ ν λ΄μ©μ΄ μΌμΉν΄μΌ νλ€.
β μΈλ±μ€λ μΈμ λͺ©λ‘μ ν¬κΈ°λ³΄λ€ μμμΌ νλ€.
π‘ λ³μ : λ°μ΄ν°λ₯Ό μμλ‘ μ μ₯ν΄ λλ κ·Έλ¦
: λ°μ΄ν°λ λ°μ΄ν° νμ(data type)μ λ°λΌ λ³μ(variable)μ μ μ₯λλ€.
: 첫κΈμλ λ°λμ λ¬Έμλ‘! μ«μX
: μΌλ°μ μΌλ‘ μλ¬Έμλ‘ μμ
: λ³μλ₯Ό μ μΈνλ©΄ λ³μ μ΄λ¦μΌλ‘ λ©λͺ¨λ¦¬ 곡κ°μ΄ λ§λ€μ΄μ§λλ°, μ²μμλ μ°λ κΈ° κ°μ΄ μ μ₯λμ΄ μλ€.
-> λ©λͺ¨λ¦¬ 곡κ°μ μ€μ μ¬μ©ν κ°μ μ μ₯νλ κ² == μ΄κΈ°ν
β λ³μ κ°μ μ¬μ©νλ κ² == λ³μλ₯Ό μ°Έμ‘°νλ€.
using System;
class VariableNote
{
static void Main()
{
int number; // λ³μ μ μΈ : λ°μ΄ν° λ΄μ κ·Έλ¦ μμ±, λ©λͺ¨λ¦¬μ μμ μ μ₯κ³΅κ° μμ±
number = 25; // κ° λμ
,ν λΉ
Console.WriteLine(number); //λ³μμ λ€μ΄ μλ κ° μ¬μ©νκΈ°(μ°Έμ‘°)
int a = 7; // λ³μ μ μΈκ³Ό λμμ μ΄κΈ°ν
int x,y,z; // νμμ΄ κ°μ λ³μ μ¬λ¬ κ° νλ²μ μ μΈ
}
}
π‘ 리ν°λ΄
: κ°μ λ³μμ μ μ₯νμ§μκ³ ν¨μμμ λ°λ‘ μΆλ ₯.
: κ°μ κ·Έλλ‘ μ λ ₯ν κ²μ΄ 리ν°λ΄ -> 리ν°λ΄μ λ³μμ μ μ₯ν΄μ μ¬μ©νλ€.
using System;
class Litera
{
static void Main()
{
Console.WriteLine(1234); //μ μ 리ν°λ΄
Console.WriteLine(3.14F); //μ€μ 리ν°λ΄
Console.WriteLine('A'); //λ¬Έμ 리ν°λ΄
Console.WriteLine("HELLO"); //λ¬Έμμ΄ λ¦¬ν°λ΄
}
}
β μ΄μ§μ 리ν°λ΄
: μ΄μ§μμμ 0B or 0bλ₯Ό λΆμΈλ€
ex) 0b0010 -> μ΄μ§μ 0010
: μ»΄ν¨ν°μμλ μλμΌλ‘ μμ§μ λ¨μλ‘ μ²λ¦¬νλ€.
Console.WriteLine(0b0010); -> 2 μΆλ ₯λλ€
β μΈλμ€μ½μ΄(_) λ¬Έμλ‘ μ«μ κ΅¬λΆ (κ°λ μ± Good)
: 1,000,000 κ°μ΄ 1_000_000μΌλ‘ μμ±ν μ μλ€.
π‘ μμ : λ³νμ§ μλ λ³μ, μ½κΈ° μ μ© λ³μ
: const λ°μ΄ν°νμ λ³μ -> ν΄λΉ λ³μλ μμ constant κ° λλ€, μ΄ λ³μλ₯Ό μμ or μ§μ(local) μμλΌκ³ νλ€.
β λ°λμ μ μΈκ³Ό λμμ νΉμ κ°μΌλ‘ μ΄κΈ°νν΄μΌ νλ€.
β ν λ² μμλ‘ μ μΈλ λ³μλ λ€μ κ°μ λ°κΏ μ μλ€.
using System;
class ConstantDemo
{
static void Main(string[] args)
{
const int MAX = 100; // μμ : μ μΈκ³Ό λμμ μ΄κΈ°ν
Console.WriteLine("μ΅λκ° : {0}", MAX);
}
}
π‘ var ν€μλ
: var λ³μλͺ <- varμ μ¬μ©ν¨μΌλ‘μ¨ μ λ ₯λλ κ°μ λ°λΌ μλμΌλ‘ νμμ΄ κ²°μ λλ€.
var num = 1234;
Console.WriteLine(num.GetType()); // System.Int32
var message = "Hello";
Console.WriteLine(message.GetType()); // System.String
β λ³μμ κΈ°λ³Έκ° defaultλ‘ μ€μ νκΈ°
: default ν€μλλ₯Ό μ¬μ©νλ©΄ C#μμ κΈ°λ³ΈμΌλ‘ μ 곡νλ κ°μΌλ‘ μ΄κΈ°νλλ€.
ex) int a = default;
: μ«μ λ°μ΄ν° νμ -> 0 , char -> \0, string -> nullμ κΈ°λ³Έκ°μΌλ‘ κ°μ§λ€.