使用LINQ操作数组和集合

在这里插入图片描述
对数组和集合进行操作时可以使用LINQ to Object技术。使用LINQ能够查询任何可枚举的集合,如数组、泛型列表等

        static void Linq_1()
        {
            int[] intScores = { 34, 68, 80, 90, 75, 32, 88 };
            var score = from hgScroe in intScores
                        where hgScroe >= 60
                        orderby hgScroe ascending
                        select hgScroe;
            Console.WriteLine("及格的分数");
            foreach (var v in score)
            {
                Console.WriteLine(v.ToString());
            }
        }

输出效果:
在这里插入图片描述
通过使用LINQ查询语法,开发人员可以使用最少的代码对数据源执行复杂的筛选、排序和分组操作。

LINQ查询表达式子句说明

子句说明
from数据源
select执行查询时返回的序列中的元素
group分组
where条件
orderby排序
join连接数据源
let引入表达式
into提供一个标识符
        static void Lind_base()
        {
            string[] strName = new string[] { "123456", "1234567", "12345678" };
            IEnumerable<string> selectQuery = from Name in strName where Name.Length < 7 select Name;

            foreach (string str in selectQuery)
            {
                Console.WriteLine(str);
            }
        }
        static void Lind_Lambda()
        {
            string[] strLists = new string[] { "LLT1", "LLT2", "LLT3" };
            string[] strList = Array.FindAll(strLists, s => (s.IndexOf("3") >= 0));
            foreach (string str in strList)
            {
                Console.WriteLine(str);
            }
        }
        //用Ling语法整理文件
        static void Lind_file()
        {
            var MainDirectory = new DirectoryInfo(@"指定路径");
            var GroupQuery = from item in MainDirectory.EnumerateFiles()
                             group item by item.Name[0];
            foreach (var item in GroupQuery)
            {
                var CurrentDirectory = Directory.CreateDirectory($"{MainDirectory.FullName}\\{item.Key.ToString()}");
                foreach (var FileItem in item)
                {
                    FileItem.MoveTo($"{CurrentDirectory.FullName}\\{FileItem.Name}");
                }
            }
        }
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果需要pdf的请下载这版:http://download.csdn.net/detail/yao__shun__yu/6000395 或者进入我的网站下载: http://ftp120325.host199.web522.com using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace TestLinq { class Program { /* * 所有的LINQ操作都是这三部门 * 1、获取数据源 * 2、创建查询 * 3、执行查询 */ static void Main(string[] args) { getDivByTwoUserLinq(); } /// /// 用linq获取被2整除的数 /// public static void getDivByTwoUserLinq() { int[] nums = { 1, 2, 3, 4, 5, 6, 7, 8 }; //非立即执行状态 var numQuery = from num in nums where (num % 2) == 0 select num; Console.WriteLine("查询整数:"); foreach (int num in numQuery) { Console.Write("{0,1} ", num); } //查询整数的数量 Console.WriteLine("\r\n查询整数数量:"); var eventNumCount = numQuery.Count(); Console.Write(eventNumCount); //查询最大值 Console.WriteLine("\r\n查询最大值:"); var maxNum = numQuery.Max(); Console.Write(maxNum); //查询平均值 Console.WriteLine("\r\n查询平均值:"); var averAgeNum = numQuery.Average(); Console.Write(averAgeNum); //查询第一个值 Console.WriteLine("\r\n查询第一个值:"); var firstNum = numQuery.First(); Console.Write(firstNum); //立即执行处理,并缓存结果集[转集合保存] List numQueryList = (from num in nums where (num % 2) == 0 select num).ToList(); //立即执行处理,并缓存结果集[转数组保存] var numQueryArray = (from num in nums where (num % 2) == 0 select num).ToArray(); Console.Read

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值