ホームページ > バックエンド開発 > C#.Net チュートリアル > C# は、LINQ、ジェネリックス、および Index 関数を使用して switch (または複数の if) ステートメントを最適化します。

C# は、LINQ、ジェネリックス、および Index 関数を使用して switch (または複数の if) ステートメントを最適化します。

黄舟
リリース: 2017-02-21 10:55:29
オリジナル
2308 人が閲覧しました

背景:
変数が「.txt.doc.xls.ppt.pdf」内の特定の形式であるかどうかを判断し、そうであれば対応する操作を実行します。

方法 1: ジェネリックスを使用する

readonly IList<String> fNames = new List<String>() {
             ".doc",
             ".txt",
             ".xls",
             ".ppt",
             ".pdf"
        };
private void Test(string fName)
{ 
    if(fNames.Contains(fName))
	{
        MessageBox.Show(fName);
    }
}
ログイン後にコピー

方法 2: LINQ を使用する

private void Test(string fName)
{
    if (new string[] { ".doc", ".txt", ".xls" }.Any(x => fName == x))
    {
        MessageBox.Show(fName);
    }
}
ログイン後にコピー

&& の場合は、All を使用する

知識拡張:

LINQ クエリ構文

ラムダ式式ツリー

LINQ 簡単な使用法クエリの例

方法 3: Index 関数を使用する

private void Test(string fName)
{
    string str = ".txt.doc.xls.ppt.pdf";
    if (str.IndexOf(fName) >= 0)
    {
        MessageBox.Show(fName);
    }
}
ログイン後にコピー

C# IndexOf use

上記は、LINQ、ジェネリックス、Index 関数を使用して switch (または複数の if) ステートメントの内容を最適化する C# です。コンテンツについては、PHP 中国語 Web サイト (m.sbmmt.com) に注目してください。




関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート