C((xi)の中のlet字句の応用例

1331 ワード

一、応用シーン
クエリー式では、サブ表現の結果を格納するときに有用であり、後のサブフレーズで使用することができます。この作業は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字句の変数を保存して使用することができる。
締め括りをつける
以上はこの文章の全部の内容です。本文の内容は皆さんの学習や仕事に一定の助けをもたらしてほしいです。もし疑問があれば、メッセージを残して交流してもいいです。