Not 创建一个表示按位求补运算的 UnaryExpression。
//Not 创建一个表示按位求补运算的 UnaryExpression。 void NotSample() { Expression notExpr = Expression.Not(Expression.Constant(true)); notExpr.ToString().Dump("NotExpr");//Not(true) Expression.Lambda<Func<bool>>(notExpr).Compile()().Dump("Not");//false } NotSample();
NotEqual 创建一个表示不相等比较的 BinaryExpression。
//NotEqual 创建一个表示不相等比较的 BinaryExpression。 void NotEqualSample() { Expression notEqualExpr = Expression.NotEqual(Expression.Constant(1), Expression.Constant(2)); notEqualExpr.ToString().Dump("NotEqualExpr");//(1!=2) Expression.Lambda<Func<bool>>(notEqualExpr).Compile()().Dump("NotEqual");//true } NotEqualSample(); //OnesComplement 返回表示一的补数的表达式。//TODO
创建数组
NewArrayInit 创建一个表示创建一维数组并使用元素列表初始化该数组的 NewArrayExpression
//NewArrayInit 创建一个表示创建一维数组并使用元素列表初始化该数组的 NewArrayExpression。 void NewArrayInitSample() { List<Expression> trees = new List<Expression>() { Expression.Constant("oak"), Expression.Constant("fir"), Expression.Constant("spruce"), Expression.Constant("alder") }; NewArrayExpression newArrayExpression = Expression.NewArrayInit(typeof(string), trees); newArrayExpression.ToString().Dump("NewArrayInit"); } NewArrayInitSample();
NewArrayBounds 创建一个表示创建具有指定秩的数组的 NewArrayExpression
//NewArrayBounds 创建一个表示创建具有指定秩的数组的 NewArrayExpression。 void NewArrayBoundsSample() { NewArrayExpression newArrayExpression = Expression.NewArrayBounds( typeof(string), Expression.Constant(3), Expression.Constant(2) ); newArrayExpression.ToString().Dump("NewArrayBounds");//new System.String[,](3, 2) } NewArrayBoundsSample();