jQuery find() 搜索所有段落中的后代 C# find() 第一个匹配元素 Func 有返回值 Action是没有返回值 Predicate 只有一个参数且返回值为bool 表达式树Expression

所有p后代span


Id为 TotalProject 的 select 标签 的后代 option标签 为选中的 text

using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication5
{
class Program
{
static void Main(string[] args)
{
List<" };
");
Console.WriteLine(sd.Find(a => a == "));
//Lambda 表达式 如果有去的时候 可以不写小括号 () --代表 参数
//Lambda 表达式 如果有回的时候 可以不写大括号 {} --代表 方法体
//() => {}
Func<; // 无去有回
Func<; // 有去有回
Console.WriteLine(有回());
Console.WriteLine(有去有回());
Action<int> 无回 = a => Console.WriteLine(a);
Action<int, int> 无回2 = (a, b) => Console.WriteLine(a + b);
//Console.WriteLine(无回(1)); // : 无法从“void”转换为“string”
无回();
无回2(, );
Predicate<string> 有去回bool = a => true;
Predicate< == a;
Console.WriteLine(有去回bool("asd"));
Console.WriteLine(有去回bool2());
"); // 去,集合中每个元素。 回,bool
//sd集合中 每个元素是否满足某条件 满足 返回true(当前元素 被过滤出来) 不满足 返回 false(当前元素 没被过滤出来)
//sd.Where() linq 里面就是用这种方法查值的 委托
//表达式树里面的 T 是 TDelegate(委托泛型) 所以要为委托泛型的格式 也叫委托类型 委托也是有很多的类型的
// 1 的类型 是 int "a" 的类型 是 string
// a => a == "1" 的类型 是 Func<string, bool>
// (a, b) => Console.WriteLine(a + b) 的类型 是 Action<int, int>
// a => 5 == a 的类型 是 Predicate<int>
//Expression 表达式树0 = a => 5 == a; //错误 无法将 lambda 表达式 转换为类型“System.Linq.Expressions.Expression”,因为它不是委托类型
Expression<Predicate< == a; // 值虽然都一样 但 a => 5 == a 这一步 赋值给了 表达式树委托类型
Expression 表达式树 = 表达式树2; // 表达式树委托类型值 隐形 转换为 基类表达式树委托 无冲突
//上面报错 只知道是委托 但不知道是哪种 表达式树委托类型 所以 表达式树委托 和 委托 是不一样的概念 虽然 值一样 可能
// Expression<Predicate<int>> 表达式树2 = a => 5 == a; 赋值的时候 内部做了处理
Console.WriteLine(表达式树2.ReturnType); //表达式树委托中 承载的 lambda 表达式(委托) 的返回类型。 bool
Console.WriteLine(表达式树2.Compile()()); //表达式树委托中 承载的 lambda 表达式(委托) 再传给个5 返回true
Expression<Func<;
Console.WriteLine(表达式树有去有回.ReturnType); // 表达式树委托中 承载的 lambda 表达式(委托) 的返回类型。 int
Console.WriteLine(表达式树有去有回.Compile()()); // 表达式树委托中 承载的 lambda 表达式(委托) 再传给个5 返回 6
Expression<Action<int, int>> 表达式树有去无回 = (a, b) => Console.WriteLine(a + b);
Console.WriteLine(表达式树有去无回.ReturnType); // 表达式树委托中 承载的 lambda 表达式(委托) 的返回类型。
//Void 空指针 null 是指针指向null 空
表达式树有去无回.Compile()(, ); // 表达式树委托中 承载的 lambda 表达式(委托) 再传给个5 6 返回 11
//说明 表达式树 的作用的 对委托(lambda 表达式) 的处理 加工 整合 重组 对更灵活 操作 委托(lambda 表达式) 提供一些帮助
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication5
{
class Program
{
static void Main(string[] args)
{
List<" };
");
Console.WriteLine(sd.Find(a => a == "));
//Lambda 表达式 如果有去的时候 可以不写小括号 () --代表 参数
//Lambda 表达式 如果有回的时候 可以不写大括号 {} --代表 方法体
//() => {}
Func<; // 无去有回
Func<; // 有去有回
Console.WriteLine(有回());
Console.WriteLine(有去有回());
Action<int> 无回 = a => Console.WriteLine(a);
Action<int, int> 无回2 = (a, b) => Console.WriteLine(a + b);
//Console.WriteLine(无回(1)); // : 无法从“void”转换为“string”
无回();
无回2(, );
Predicate<string> 有去回bool = a => true;
Predicate< == a;
Console.WriteLine(有去回bool("asd"));
Console.WriteLine(有去回bool2());
"); // 去,集合中每个元素。 回,bool
//sd集合中 每个元素是否满足某条件 满足 返回true(当前元素 被过滤出来) 不满足 返回 false(当前元素 没被过滤出来)
//sd.Where() linq 里面就是用这种方法查值的 委托
//表达式树里面的 T 是 TDelegate(委托泛型) 所以要为委托泛型的格式 也叫委托类型 委托也是有很多的类型的
// 1 的类型 是 int "a" 的类型 是 string
// a => a == "1" 的类型 是 Func<string, bool>
// (a, b) => Console.WriteLine(a + b) 的类型 是 Action<int, int>
// a => 5 == a 的类型 是 Predicate<int>
//Expression 表达式树0 = a => 5 == a; //错误 无法将 lambda 表达式 转换为类型“System.Linq.Expressions.Expression”,因为它不是委托类型
Expression<Predicate< == a; // 值虽然都一样 但 a => 5 == a 这一步 赋值给了 表达式树委托类型
Expression 表达式树 = 表达式树2; // 表达式树委托类型值 隐形 转换为 基类表达式树委托 无冲突
//上面报错 只知道是委托 但不知道是哪种 表达式树委托类型 所以 表达式树委托 和 委托 是不一样的概念 虽然 值一样 可能
// Expression<Predicate<int>> 表达式树2 = a => 5 == a; 赋值的时候 内部做了处理
Console.WriteLine(表达式树2.ReturnType); //表达式树委托中 承载的 lambda 表达式(委托) 的返回类型。 bool
Console.WriteLine(表达式树2.Compile()()); //表达式树委托中 承载的 lambda 表达式(委托) 再传给个5 返回true
Expression<Func<;
Console.WriteLine(表达式树有去有回.ReturnType); // 表达式树委托中 承载的 lambda 表达式(委托) 的返回类型。 int
Console.WriteLine(表达式树有去有回.Compile()()); // 表达式树委托中 承载的 lambda 表达式(委托) 再传给个5 返回 6
Expression<Action<int, int>> 表达式树有去无回 = (a, b) => Console.WriteLine(a + b);
Console.WriteLine(表达式树有去无回.ReturnType); // 表达式树委托中 承载的 lambda 表达式(委托) 的返回类型。
//Void 空指针 null 是指针指向null 空
表达式树有去无回.Compile()(, ); // 表达式树委托中 承载的 lambda 表达式(委托) 再传给个5 6 返回 11
//说明 表达式树 的作用的 对委托(lambda 表达式) 的处理 加工 整合 重组 对更灵活 操作 委托(lambda 表达式) 提供一些帮助
}
}
}
//public static IQueryable<TSource> Where<TSource>(this IQueryable<TSource> source, Expression<Func<TSource, bool>> predicate);
//public static IEnumerable<TSource> Where<TSource>(this IEnumerable<TSource> source, Func<TSource, bool> predicate);
// IQueryable 提供对数据类型已知的特定数据源的查询进行计算的功能。 IQueryable 那个 到数据源中查 才能存到内存中
// IEnumerable 公开枚举数,该枚举数支持在指定类型的集合上进行简单迭代。 已经IEnumerable存到内存中了 只做 简单迭代
//所以 Expression<Func<TSource, bool>> predicate 带表达式树的 要去数据源中查 才能存到内存中
//Func<TSource, bool> predicate 不带表达式树的 直接根据 委托查的 直接 在内存中做 简单迭代
jQuery find() 搜索所有段落中的后代 C# find() 第一个匹配元素 Func 有返回值 Action是没有返回值 Predicate 只有一个参数且返回值为bool 表达式树Expression的更多相关文章
- [C#] C# 知识回顾 - 表达式树 Expression Trees
C# 知识回顾 - 表达式树 Expression Trees 目录 简介 Lambda 表达式创建表达式树 API 创建表达式树 解析表达式树 表达式树的永久性 编译表达式树 执行表达式树 修改表达 ...
- 表达式树(Expression Tree)
饮水思源 本文并非原创而是下面网址的一个学习笔记 https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/concepts/e ...
- C# 知识回顾 - 表达式树 Expression Trees
C# 知识回顾 - 表达式树 Expression Trees 目录 简介 Lambda 表达式创建表达式树 API 创建表达式树 解析表达式树 表达式树的永久性 编译表达式树 执行表达式树 修改表达 ...
- 表达式树 Expression
转载泛型方法动态生成表达式树 Expression public string GetGridJSON(TraderInfo model) { IQueryable<TraderInfo> ...
- 利用表达式树Expression优化反射性能
最近做了一个.Net Core环境下,基于NPOI的Excel导入导出以及Word操作的服务封装,涉及到大量反射操作,在性能优化过程中使用到了表达式树,记录一下. Excel导入是相对比较麻烦的一块, ...
- 表达式树Expression
Expression表达式树动态查询 在进行数据列表的查询中,我们通常会使用两种方式进行查询: linq查询 数据库sql语句查询 这样固然可以实现查询,本人之前也都是这么做的,因为查询的条件很少.使 ...
- C# 表达式树 Expression
表达式树是定义代码的数据结构. 它们基于编译器用于分析代码和生成已编译输出的相同结构. 几种常见的表达式 BinaryExpression 包含二元运算符的表达式 BinaryExpression b ...
- Func委托与表达式树Expression
最近在写ORM框架,其中遇到一个难点,就是作为框架调用方如何将查询条件传入框架内.其中就用到了Expression. Func委托 要Expression先要了解Func委托,Func委托的样式是: ...
- 泛型方法动态生成表达式树 Expression
public string GetGridJSON(TraderInfo model) { IQueryable<TraderInfo> Temp = db.TraderInfo; if ...
随机推荐
- Maven学习笔记3
好了,按照笔记2的方法我们创建好一个web项目(使用maven:java项目还是java项目,web项目还是web项目,唯一的变化既是我们在pom.xml中配置了我们本应该先下载然后导入的jar包,这 ...
- 并查集【CF731C】Socks
Description 有\(n\)只袜子,\(k\)种颜色,在\(m\)天中,问最少修改几只袜子的颜色,可以使每天要穿的袜子颜色相同. Input 第一行\(n,m,k\)分别对应题目描述. 接下来 ...
- codeforces 713C C. Sonya and Problem Wihtout a Legend(dp)(将一个数组变成严格单增数组的最少步骤)
E. Sonya and Problem Wihtout a Legend time limit per test 5 seconds memory limit per test 256 megaby ...
- Superbull(最大生成树)(Kruskal)
Superbull 时间限制: 1 Sec 内存限制: 64 MB提交: 49 解决: 13[提交][状态][讨论版] 题目描述 Bessie and her friends are playin ...
- [BZOJ 2809] Dispatching
Link:https://www.lydsy.com/JudgeOnline/problem.php?id=2809 Algorithm: 很容易看出此题贪心的思路: 只要在每个点的子树中贪心选取费用 ...
- 【博弈论】【SG函数】Codeforces Round #188 (Div. 1) D. Game with Powers
将整个游戏可以划分成若干个互不相交的子游戏. 每个子游戏的sg值只与其中的数的个数有关.而这个数不会超过30. 于是可以预处理出这个sg值表. 然后从1到n枚举,对<=sqrt(n)的部分,用个 ...
- 5.8 Properties
一.Propertie 主要用于读写资源配置文件. Properties继承自Hashtable. 我们来看下HashMap和Hashtable的区别: Hashtabl 线程安全, 同步, ...
- boost 1.57 vs2013 编译
启动vs2013中的命令行注意区分32/64, 进入boost目录, 再次运行 bootstrap.bat 编译: bjam.exe stage --toolset=msvc-12.0 --sta ...
- C++类的复习
1.C++ 类的声明:class class_name{ private: /* *私有的数据和成员函数 *只能被本类中的成员函数引用,类外不能调用 ...
- SSL和TSL的区别【转】
SSL由从前的网景公司开发有1,2,3三个版本,但现在只使用版本3 TLS是SSL的标准化后的产物 有1.0 1.1 1.2三个版本 默认使用1.0 TLS1.0和SSL3.0几乎没有区别 事实上我们 ...