好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

C#中的let字句应用示例

一、应用场景

在查询表达式中,存储子表达式的结果有时很有用,这样可以在随后的子句中使用。 可以使用 let 关键字完成这一工作,该关键字可以创建一个新的范围变量,并且用您提供的表达式的结果初始化该变量。 一旦用值初始化了该范围变量,它就不能用于存储其他值。 但如果该范围变量存储的是可查询的类型,则可以对其进行查询。

二、示例代码

?

using System;

using System.Linq;

 

namespace UseLet

{

  class Program

  {

  static void Main()

  {

   string [] strings = {

   "A penny saved is a penny earned." ,

   "The early bird catches the worm." ,

   "The pen is mightier than the sword."

   };

 

   var earlyBirdQuery = from sentence in strings

      let words = sentence.Split( ' ' )

      from word in words

      let w = word.ToLower()

      where w[0] == 'a' || w[0] == 'e' || w[0] == 'i' || w[0] == 'o' || w[0] == 'u'

      select word;

 

   foreach (var v in earlyBirdQuery)

   {

   Console.WriteLine( "\"{0}\" starts with a vowel" , v);

   }

 

   Console.WriteLine( "Press any key to exit" );

   Console.ReadLine();

  }

  }

}

从上面效果可以看出子句let的作用。如果不使用 let,则必须在 where 子句的每个谓词中调用 ToLower,并且let可以保存from字句中的变量来使用。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

dy("nrwz");

查看更多关于C#中的let字句应用示例的详细内容...

  阅读:49次