웹 개발 공부하기

[01.09] 람다 + 오늘의 포스팅💖

jooya-1009 2025. 1. 12. 19:44

2025.01.12 - [웹 개발 공부하기] - [01.09] 함수 포인터

2025.01.12 - [웹 개발 공부하기] - [01.09] 구조체

2025.01.12 - [웹 개발 공부하기] - [01.09] 공용체, enum

2025.01.12 - [웹 개발 공부하기] - [01.09] 동적 메모리 할당

2025.01.12 - [웹 개발 공부하기] - [01.09] 객체 지향 프로그래밍 방식

2025.01.12 - [웹 개발 공부하기] - [01.09] 클래스(Class)

2025.01.12 - [웹 개발 공부하기] - [01.09] 생성자와 상속성

2025.01.12 - [웹 개발 공부하기] - [01.09] 오버로딩과 오버라이딩

2025.01.12 - [웹 개발 공부하기] - [01.09] 인터페이스

💥 익명 메소드

 - 메소드를 미리 정의하지 않고 사용할 때 정의한다.

 - 익명 메소드를 사용하면 코드가 간결해진다.

 - 익명 메소드는 별도의 메소드를 만들지 않으므로 코딩 오버헤드를 줄일 수 있다.

 - 익명 메소드는 내용 자체가 복잡하면 안된다.

 - 익명 메소드는 람다식에서 사용된다.

💥 람다식

 - 기존 익명 메소드를 더욱 간결하게 만든다.

 - 코드를 짧고 간결하게 표현하는 것이 목적이다.

💥 람다식 표현

 - 델리게이트(Delegate) 본체를 람다식으로 표현한다.

 - 델리게이트와 인수의 갯수 및 타입은 일치해야 한다.

 - (x,y) => x + y 람다식은 'x와 y가 x+y가 된다'로 읽는다.

 - 델리게이트 키워드는 사라지며 람다식을 의미하는 => 기호로 대체된다.

Delegate(int x, int y) { return x + y} ;

 

🔻

(x,y) => x + y;

 

💥 람다식 실습 해보기

using System;

class HelloWorld {
    static int Add(int a){
        return a + 1;
    }
    
    delegate int CalcDele(int x);
    
    static void Main() {
        Console.WriteLine(Add(3));
        
        CalcDele d = delegate (int x){
            return x + 1;
        };
        Console.WriteLine(d(3));
    }
}

 
🔻

using System;

class HelloWorld {
    static int Add(int a){
        return a + 1;
    }
    
    delegate int CalcDele(int x);
    
    static void Main() {
        Console.WriteLine(Add(3));
        
        CalcDele d = x => x + 1;
        
        Console.WriteLine(d(3));
    }
}