c#入门学习-Action和Func的使用

我的理解就是:Action和Func就是官方声明好的代理

using System;

namespace funcActionDemo
{
    class MainClass
    {
        public static void Main(string[] args)
        {
            //Action 的使用
            Action<string,stringbookAction = new Action<string,string>(book);
            bookAction("一生戎马","国家图书馆");


            //func的使用
            //Fun常用有两个参数,前面的是输入参数,后面的是输出参数(意味着是在另一部分运算中产生的)恰恰是整个方法的返回值
            Func<string,stringRetBook = new Func<string,string>(retBook);
            Console.WriteLine(RetBook("国家战略"));
        }
        public static void book(string bookName,string address){
            Console.WriteLine("买的书是:{0}",bookName);
        }


        public static string retBook(string bookName)
        {
            return "书的名字是:" + bookName;
        }
        //总结
        //1:Action用于没有返回值的方法(参数可以根据自己情况进行传递)

        //2:Func恰恰相反用于有返回值的方法(同样参数根据自己情况情况)

        //3:记住无返回就用action,有返回就用Func
    }
}

你可能感兴趣的:(c#)