当前位置: 首页 > 编程笔记 >

C#中的Func泛型类型

颛孙英勋
2023-03-14
本文向大家介绍C#中的Func泛型类型,包括了C#中的Func泛型类型的使用技巧和注意事项,需要的朋友参考一下

Func泛型类型存储匿名方法,并且是参数化类型。

在下面的示例中,我们有4个func类型实例-

第一种类型接收int并返回字符串

Func<int, string> one = (p) => string.Format("{0}", p);

第二种类型接收bool和long并返回字符串

Func<bool, long, string> two = (q, p) =>string.Format("{0} and {1}", q, p);

第三种类型接收bool和int并返回字符串

Func<bool, int, string> three = (q, p) => string.Format("{0} and {1}", q, p);

第四种类型接收十进制并返回字符串

Func<decimal, string> four = (p) =>string.Format("{0}", p);

让我们看看如何显示它们-

示例

using System;
using System.IO;

namespace Demo {
   class Program {
      static void Main(string[] args) {

         //四个func类型实例
         //第一种类型接收int并返回字符串
         Func<int, string> one = (p) =>
         string.Format("{0}", p);

         // second type receives bool & long and returns string
         Func<bool, long, string> two = (q, p) =>
         string.Format("{0} and {1}", q, p);

         // three type receives bool & int and returns string
         Func<bool, int, string> three = (q, p) =>
         string.Format("{0} and {1}", q, p);

         //第四个类型接收十进制并返回字符串
         Func<decimal, string> four = (p) =>
         string.Format("{0}", p);

         Console.WriteLine(one.Invoke(25));
         Console.WriteLine(two.Invoke(false, 76756566));
         Console.WriteLine(three.Invoke(true, 50));
         Console.WriteLine(four.Invoke(1.2m));
      }
   }
}

输出结果

25
False and 76756566
True and 50
1.2
 类似资料:
  • 本文向大家介绍C#中Predicate 与Func 泛型委托的用法实例,包括了C#中Predicate 与Func 泛型委托的用法实例的使用技巧和注意事项,需要的朋友参考一下 本文以实例形式分析了C#中Predicate<T>与Func<T, bool>泛型委托的用法,分享给大家供大家参考之用。具体如下: 先来看看下面的例子: 非常简单,就是先判断字符串列表l中是否有s字符串,如果有,则取之并显示

  • 问题内容: 如果在Java中创建泛型类(该类具有泛型类型参数),则可以使用泛型方法(该方法带有泛型类型参数)吗? 考虑以下示例: 正如您对通用方法所期望的那样,我可以使用任何对象调用的实例: 但是,如果我尝试使用 不 指定泛型类型的实例,则无论传入什么,我都会调用返回, 奇怪的是,如果返回类型是通用类,它将编译(例如(实际上,这可以解释-参见下面的答案)): 此外,如果输入通用类,即使仅使用通配符

  • 如果在Java中创建泛型类(该类具有泛型类型参数),是否可以使用泛型方法(该方法采用泛型类型参数)? 考虑下面的例子: 正如您所期望的那样,对于任何对象,的实例,我都可以调用: 但是,如果我试图使用的实例而不指定泛型类型,那么调用将返回一个

  • 如何获取这个类的类型?对于上下文,我使用ModelMapper,我需要类类型T从S转换为T。 背景: 我已经尝试了N种方法,其中我放置了“//一些方法来获取类型”,但没有任何效果。例如: 或

  • 主要内容:泛型的特性,泛型方法,泛型委托在 C# 中,泛型(Generic)是一种规范,它允许我们使用占位符来定义类和方法,编译器会在编译时将这些占位符替换为指定的类型,利用泛型的这一特性我们可以定义通用类(泛型类)或方法(泛型方法)。 定义通用类需要使用尖括号 ,这里的尖括号用于将类或方法声明为泛型。下面通过一个简单的示例来帮助您理解这个概念: 允许结果如下: 小牛知识库 1234567 C 泛型的特性 可以将泛型看作是一种增强程序功

  • 本文向大家介绍深入浅析C#泛型类型,包括了深入浅析C#泛型类型的使用技巧和注意事项,需要的朋友参考一下 上篇文章给大家介绍了浅析C# 中的类型系统(值类型和引用类型),接下来通过本文给大家介绍下c# 泛型类型, 说下C#中的泛型,熟练地使用泛型能提高代码的重用性,使用我们代码瞬间就高大上了,当然只有一点点,真的只有一点点,因为后面要学习和掌握的知识还有很多。先来看下一个使用Dictionary<T