π£μΈμ΄

thisμ this() thisλ κ°μ²΄κ° μμ μ μ§μΉν λ μ¬μ©νλ ν€μλμ΄λ€. κ°μ²΄ μΈλΆμμλ κ°μ²΄μ νλλ λ©μλμ μ κ·Όν λ κ°μ²΄μ μ΄λ¦μ μ¬μ©νλ€λ©΄ κ°μ²΄ λ΄λΆμμλ μμ μ νλλ λ©μλμ μ κ·Όν λ this ν€μλλ₯Ό μ¬μ©νλ€. this.name : ν΄λμ€μ νλ name : λ©μλμ 맀κ°λ³μ class NameClass { private string name; public void SetName(string name) { this.name = name; } } this()λ μκΈ° μμ μ μμ±μλ₯Ό κ°λ¦¬ν¨λ€. 맀κ°λ³μμ λ°λΌ μμ±μλ₯Ό μ€λ²λ‘λ©ν λ μμ±μμ μ½λ μμ this()λ₯Ό μ μΈνμ¬ λ€λ₯Έ μμ±μλ₯Ό νΈμΆνλ€. this() : MyClass() νΈμΆ this(b) : MyClass(int b) νΈ..

λ©μλμ λ§€κ° λ³μμ κ°μκ° μ ν΄μ Έμμ§ μμ λ paramsλ₯Ό ν€μλλ₯Ό ν΅ν΄ λ°°μ΄μ μ΄μ©νμ¬ μ μΈνλ€. public static int Plus(params int[] numbers) { ... } static void Main(string[] args) { int result1 = Plus(1, 2, 3, 4, 5); int result2 = Plus(1, 2, 3); }

λ©μλμ 맀κ°λ³μλ₯Ό int a, int bμ κ°μ΄ μ μνμ λ κ°μ μν μ λ¬(call by value)λ‘ μ΄λ£¨μ΄μ Έ λ©μλλ₯Ό νΈμΆν λ μ¬μ©ν λ³μ x, yλ 볡μ¬λμ΄ a, bμ λ€μ΄κ°λ€. λ°λΌμ x, yκ°μ λ°λμ§ μλλ€. class Calcul { public static int Plus(int a, int b) { ... } } class Program { static void Main(string[] args) { int x = 3; int y = 5; int result = Calcul.Plus(x, y); } } λ§€κ° λ³μκ° λ©μλμ λκ²¨μ§ μλ³Έ λ³μλ₯Ό μ§μ μ°Έμ‘°νκ³ μΆλ€λ©΄ μ°Έμ‘°μ μν μ λ¬(call by reference)μ μ¬μ©νκΈ° μν΄ refλ₯Ό μ μΈν΄μ£Όλ©΄ λλ€. λ©μλλ₯Ό μ μΈν λ, λ©μ..

μννΈ μ°μ°μ > μ€λ₯Έμͺ½ μννΈ μ°μ°μ : 첫λ²μ§Έ νΌμ°μ°μ(a)μ λΉνΈλ₯Ό λλ²μ§Έ νΌμ°μ°μ(b)λ§νΌ μ€λ₯Έμͺ½ μ΄λ = a / 2(bμ κ³±) int a = 240;// 00000000 00000000 00001111 00000000 int result_a = a2;// 00000000 00000000 00000011 11000000β λΉνΈ λ Όλ¦¬ μ°μ°μ & λ Όλ¦¬κ³±(and) μ°μ°μ : λ λΉνΈ λͺ¨λ μ°Έμ΄μ¬μΌ μ°Έ | λ Όλ¦¬ν©(or) μ°μ°μ : λ λΉνΈ μ€ νλλΌλ μ°Έμ΄λ©΄ μ°Έ ^ λ°°νμ λ Όλ¦¬ν©(xor) μ°μ°μ : λ λΉνΈκ° μλ‘ λ¬λΌμΌ μ°Έ ~ 보μ(not) μ°μ°μ : νΌμ°μ°μκ° νλλΏμΈ λ¨ν μ°μ°μ. λΉνΈλ₯Ό λ€μ§λ κΈ°λ₯

int, string λ± λͺ μμ νμ μΈμ varλ₯Ό μ΄μ©νμ¬ μλμΌλ‘ νμμ μ§μ νλλ‘ ν μ μλ€. κ° νμμ λνλ΄λ ν€μλλ₯Ό νλ‘κ·Έλλ¨Έκ° μ§μ νλ λμ , μ»΄νμΌλ¬κ° λ°μ΄ν°λ₯Ό λ³΄κ³ μμμ νμμ κ²°μ νλ€. var a = 3;// int var b = "hello";//string var νμμ μ¬μ©ν λλ λ°λμ μ μΈκ³Ό λμμ μ΄κΈ°νλ₯Ό ν΄μ€μΌνλ€. C#μ μ μ λ³μλ₯Ό μ§μνμ§ μμΌλ―λ‘ μ§μ λ³μλ‘λ§ μ¬μ©λλ€. var νμμΌλ‘ μ μΈλ λ²μμ νμμ μκ³ μΆμ λ GetType()μ μ΄μ©νλ©΄ λλ€. var a = 20; Console.WriteLine(a.GetType());// System.Int32

Nullable μ μΈ λ°μ΄ν° νμ μμ ?λ₯Ό λΆμ¬μ€λ€. int? a = null; HasValue : ν΄λΉ λ³μκ° κ°μ κ°μ§κ³ μλμ§ νμΈ. True λλ False λ°ν Value : ν΄λΉ λ³μμ κ° λ°ν int? a = null; Console.WriteLine(a.HasValue);// False Console.WriteLine(a.Value);// μλ¬ a = 30; Console.WriteLine(a.HasValue);// True Console.WriteLine(a.Value);// 30

μμμ μ΄κ±°νμ λ³μμ λ¬λ¦¬ μμ λ΄κΈ΄ λ°μ΄ν°λ₯Ό μ λ λ°κΏ μ μλ λ©λͺ¨λ¦¬ κ³΅κ° μμ μ μΈ λ³μ μ μΈκ³Ό μ μ¬ν λ°©μμΌλ‘ μμ constλ₯Ό λΆμΈλ€. const int a = 3; const string b = "hello"; μ΄κ±°ν μ μΈ κ°μ λ²μ£Όμ μνλ μ¬λ¬ κ°μ μμλ₯Ό μ μΈν λ μ μ©νλ©°, enum ν€μλλ₯Ό μ΄μ©νλ€. enum Reseult { YES, NO, CANCEL, CONFIRM, OK } // μΆλ ₯ Console.WriteLine((int)Result.YES);// 0 Console.WriteLine((int)Result.NO);// 1 // μ΄κ±° νμ λ³μ μ μΈ Result result = Result.YES; Console.WriteLine(result == Result.YES);// ..

κ° νμ κ° νμμ λ³μκ° κ°μ λ΄λ λ°μ΄ν° νμμ λ»νλ€. κ° νμμμλ μ€νμ μ΄μ©νλ€. μ€νμ κ°μ₯ λ¨Όμ λ€μ΄μ¨ κ°μ΄ κ°μ₯ λμ€μ μ κ±°λλ νμμΌλ‘ νλ‘κ·Έλ¨ μ€νμ΄ μ€κ΄νΈ }λ₯Ό λ§λλ©΄ λͺ¨λ κ° νμμ λ³μλ€μ λ©λͺ¨λ¦¬μμ μ κ±°λλ€. μ°Έμ‘° νμ μ°Έμ‘° νμμ λ³μκ° κ°μ΄ μλ κ³³μ μμΉλ₯Ό λ΄λ λ°μ΄ν° νμμ λ»νλ€. μ°Έμ‘° νμμμλ νμ μ΄μ©νμ¬ ν μμμ λ°μ΄ν°λ₯Ό μ μ₯νκ³ , μ€ν μμμ ν λ©λͺ¨λ¦¬ μ£Όμλ₯Ό μ μ₯νλ€. νμ μ€νκ³Ό λ€λ₯΄κ² μ μ₯λμ΄ μλ κ°μ μ€μ€λ‘ μ κ±°νλ λ©μ»€λμ¦μ΄ μλ€. λμ CLRμ κ°λΉμ§ 컬λ ν°λ₯Ό ν΅ν΄ νμ λ μ΄μ μ¬μ©νμ§ μλ κ°μ²΄λ₯Ό μ κ±°νλ€. κΈ°λ³Έ λ°μ΄ν° νμ μ μ κ³μ΄ νμ μ μ : sbyte(1), short(2), int(4), long(8) λΆνΈ μλ μ μ : byte(..