C# 使用LINQ、泛型、Index函數來最佳化switch(或多條if)語句

黄舟
發布: 2017-02-21 10:55:29
原創
2251 人瀏覽過

背景:
        判斷某變數是不是".txt.doc.xls.ppt.pdf"中的某一種格式,如果是則執行對應的操作。

方法一:使用泛型

readonly IList<String> fNames = new List<String>() {
             ".doc",
             ".txt",
             ".xls",
             ".ppt",
             ".pdf"
        };
private void Test(string fName)
{ 
    if(fNames.Contains(fName))
	{
        MessageBox.Show(fName);
    }
}
登入後複製

方法二:使用LINQ

private void Test(string fName)
{
    if (new string[] { ".doc", ".txt", ".xls" }.Any(x => fName == x))
    {
        MessageBox.Show(fName);
    }
}
登入後複製

如果是&&就用All

知識拓展:

LINQ 查詢語法

Lambda表達式運算式樹

LINQ查詢的簡單用法範例

方法三:使用Index函數

private void Test(string fName)
{
    string str = ".txt.doc.xls.ppt.pdf";
    if (str.IndexOf(fName) >= 0)
    {
        MessageBox.Show(fName);
    }
}
登入後複製

C# IndexOf 用法

以上就是C#  使用LINQ、泛型、Index函數來最佳化switch(或多條if)語句的內容,更多相關內容請關注PHP中文網(www.php.cn)!




相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!