Fun<T, Result>

public delegate TResult Func<in T1, in T2...., out TResult>(T1 arg1, T2 arg2....);

T代表输入参数,可以是1个或多个

out TResult代表输出参数

arg 委托封装方法的参数

当我们使用一个或多个参数并且返回一个值时,可以不用自己定义委托,使用已经定义好的委托。

注:若引用一个具有一个参数并且返回值为空(void)的方法,则需要使用泛型Action<T>委托

例如:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Func<int, bool> f1 = IsNumberLessThan5;
            Console.WriteLine(f1(10));
            Console.ReadKey();
        }

        private static bool IsNumberLessThan5(int number)
        {
            return number < 5;
        }
    }
}

  

时间: 2024-08-23 22:54:42

Fun<T, Result>的相关文章

错误处理(Operation Result)方法

问题 现在有一个FileStorageService类,继承自IStorageService,具体实现如下 public interface IStorageService { void WriteAllBytes(string path, byte[] buffer); byte[] ReadAllBytes(string path); } public class FileStorageService : IStorageService { public void WriteAllBytes

Output result string after numbers addition and subtraction

题目描述:  通过键盘输入100以内正整数的加.减运算式,请编写一个程序输出运算结果字符串. 输入字符串的格式为:"操作数1 运算符 操作数2","操作数"与"运算符"之间以一个空格隔开. 补充说明: 1. 操作数为正整数,不需要考虑计算结果溢出的情况. 2. 若输入算式格式错误,输出结果为"0". 要求实现函数:  void arithmetic(const char *pInputStr, long lInputLen,

Struts2:Result结果类型

常用的结果类型 Struts中自带了一些结果类型.dispatcher表示将结果转交给JSP或者Servlet,redirect表示重定向到另外一个URL,redirectAction表示重定向到另外一个Struts动作.默认的都是dispatcher类型.dispatcher类型的返回结果中可以使用OGNL表达式,主要是为了便于实现显示动态的页面.redirect结果类型中也可以使用OGNL表达式.下面是定义dispatcher结果的一个例子: <action name="Test&qu

mybatis异常:Could not find result map java.util.Map 问题分析及解决

错误写法 <select id="queryXXXCount" resultMap="java.util.Map" > mybatis报出的异常日志: org.apache.ibatis.builder.IncompleteElementException: Could not find result map java.util.Map at org.apache.ibatis.builder.MapperBuilderAssistant.setStat

笔记:MyBatis Mapper XML文件详解 - Result Maps

Result Maps(结果集) resultMap 元素是 MyBatis 中最重要最强大的元素.它就是让你远离 90%的需要从结果 集中取出数据的 JDBC 代码的那个东西, 而且在一些情形下允许你做一些 JDBC 不支持的事 情. 事实上, 编写相似于对复杂语句联合映射这些等同的代码, 也许可以跨过上千行的代码. ResultMap 的设计就是简单语句不需要明确的结果映射,而很多复杂语句确实需要描述它们 的关系,你已经看到简单映射语句的示例了,但没有明确的 resultMap.比如: <s

java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result异常的解决方法

今天在写一个JAVA程序的时候出现了异常:java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result.发现报错的语句是: 1 foo.divide(bar)); 原来JAVA中如果用BigDecimal做除法的时候一定要在divide方法中传递第二个参数,定义精确到小数点后几位,否则在不整除的情况下,结果是无限循环小数时,就会抛出以上异常.解决方法:

8.4Solr API使用(Result Grouping分组查询)

转载请出自出处:http://eksliang.iteye.com/blog/2169458 一.概述 分组统计查询不同于分组统计(Facet),facet只是简单统计记录数,并不能为每组数据返回实际的数据回来,solr提供的grouping查询能够解决这一问题,也就是说,他除了能分组外,还能把每组数据返回来. 二.语法简介 参考实例一 查询参数如下: q=*:* &group=true &group.field=price 返回结果如下: Solr Grouping参数列表 参数 参数含

mybatis强化(二)Parameters和Result

本文通过一个简单例子简单记录下参数的映射.转载注明出处:http://www.cnblogs.com/wdfwolf3/p/6804243.html,谢谢.文件目录如下, 1.配置文件mybatisconfig.xml如下,这里简要说明一下environments.MyBatis 可以配置成适应多种环境,这种机制有助于将 SQL 映射应用于多种数据库之中,尽管可以配置多个环境,每个 SqlSessionFactory 实例只能选择其一.所以,如果你想连接两个数据库,就需要创建两个 SqlSess

Struts2中 Result类型配置详解(转)

一个result代表了一个可能的输出.当Action类的方法执行完成时,它返回一个字符串类型的结果码,框架根据这个结果码选择对应的result,向用户输出.在com.opensymphony.xwork2.Action接口中定义了一组标准的结果代码,可供开发人员使用,当然了只有我们的action继承ActionSupport 这个类才可以使用下面的结果代码,如下所示:public interface Action{    public static final String SUCCESS =

struts2学习笔记之七:Result类型

一:关于Struts2的type类型,也就是Result类型,他们都实现了共同的接口Result,都实现了execute方法 他们体现了策略模式,具体Result类型参见:struts-default.xml文件: <result-types> <result-type name="chain" class="com.opensymphony.xwork2.ActionChainResult"/> <result-type name=&