`
sjk2013
  • 浏览: 2191167 次
文章分类
社区版块
存档分类
最新评论

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

知识拓展:

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 用法





分享到:
评论

相关推荐

    Visual C# 2010程序设计教程PPT

    第3章 程序流程控制 选择结构及if,switch语句 循环结构及循环语句 跳出循环 异常处理及try-catch-finally语句 第4章 数组与集合 数组的概念及定义 一维数组的使用 理解结合的概念及使用 ...

    轻松学C#(图解版)

    11.2.2 使用多条catch语句 205 11.2.3 嵌套try块 206 11.2.4 抛出异常 207 11.2.5 重新抛出异常 208 11.2.6 finally语句 210 11.3 自定义异常类 212 11.4 checked和unchecked关键字 214 11.4.1 checked 214 11.4.2 ...

    Visual C# 2010程序设计教程(教程PPT+源代码)

    3.1.2 switch语句 3.2 循环结构程序设计 3.2.1 for语句 3.2.2 for each语句 3.2.3 while语句 3.2.4 do---while语句 3.2.5 跳出循环 3.3 异常处理结构 3.3.1 异常的产生 3.3.2 处理异常 3.4 本章小结 3.5 上机练习 ...

    C#5.0本质论第四版(因文件较大传的是百度网盘地址)

    13.1 使用多播委托来编码Observer模式 366 13.1.1 定义订阅者方法 366 13.1.2 定义发布者 367 13.1.3 连接发布者和订阅者 368 13.1.4 调用委托 368 13.1.5 检查null值 369 13.1.6 委托...

    明日科技C#开发入门及项目实战

    实例024 利用switch语句判断时间 实例025 利用while语句判断大小 实例026 打印九九乘法表 实例027 使用break语句提前退出循环语句 实例028 使用continue语句转移至循环开始处 实例029 使用流程控制语句报销业务花销 ...

    《C#经典编程220例》.(明日科技).【带书签】-共3部分

    实例024 利用switch语句判断时间 35 实例025 利用while语句判断大小 36 实例026 打印九九乘法表 38 实例027 使用break语句提前退出循环语句 39 实例028 使用continue语句转移至循环开始处 40 实例029 使用流程控制...

    C#全能速查宝典

    《C#全能速查宝典》共分为8章,分别介绍了C#语言基础、Windows窗体及常用控件、Windows高级控件、控件公共属性、方法及事件、数据库开发、文件、数据流与注册表、GDI+绘图技术和C#高级编程,共包含562个C#编程中常用...

    AspNet MVC 开发技术

    4.3.3 switCh语句 65 4.4 循环 68 4.4.1 do循环 68 4.4.2 while循环 71 4.4.3 for循环 73 4.4.4 循环的中断 77 4.4.5 无限循环 78 4.5 小结 78 4.6 练习 79 4.7 本章要点 79 第5章 变量的更多内容 81 5.1 类型转换 ...

Global site tag (gtag.js) - Google Analytics