C# 使用LINQ、泛型、Index函數優化switch(或者多條if)語句
背景:
判斷某個變量是不是".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
知識拓展:
Lambda表達式表達式樹
方法三:使用Index函數
private void Test(string fName) { string str = ".txt.doc.xls.ppt.pdf"; if (str.IndexOf(fName) >= 0) { MessageBox.Show(fName); } }C# IndexOf 用法
最後更新:2017-04-03 12:55:27