LinqTo数组和cast,typeof的用法


 

一:

现在又如下数组:

 string[] greeting = { "hello word", "hello linq", "hello C#", "hello C# and linq" };

查询此数组中以linq结尾的字符串

      /// <summary>
        /// linq查询数组
        /// </summary>
        private void HelloWord()
        {
            string[] greeting = { "hello word", "hello linq", "hello C#", "hello C# and linq" };
            var items = from s in greeting where s.EndsWith("linq") select s;
            foreach (var item in items)
            {
                Console.WriteLine(item);
            }
            Console.ReadKey();
        }

运行结果为

hello linq
hello C# and linq

二:经常调用一个字符串数组的时候,有时候需要将其每个字符转换为int再进行处理

  具体示例如下:

       //经常调用一个字符串数组的时候,有时候需要将其每个字符转换为int再进行处理,
        //将字符串数组转换为int数组
        private static void linqStringToInt()
        {
            string[] str = { "01", "022", "02" };
            //转换整形
            var items = str.Select(s => Int32.Parse(s)).ToArray();
            //转换整形后排序
            var item1 = str.Select(s => Int32.Parse(s)).OrderBy(s => s).ToArray();
            foreach (var item in item1)
            {
                Console.WriteLine(item * 2);
            }
            Console.ReadKey();
        }

运行结果为:2、4、44
三:cast的用法

     /// <summary>
        ///  //linq cast 将以前版本的集合转换为IEnumerable<T>
        /// </summary>
        private static void LinqCast()
        {

            //首先创建一个以前版本的集合
            ArrayList arraylist = new ArrayList();
            //原本希望在这里初始化,但是这个初始化功能不支持以前的版本
            arraylist.Add("111");
            arraylist.Add("222333");
            arraylist.Add("333333333");
            IEnumerable<string> lists = arraylist.Cast<string>().Where(n => n.Length < 8);
            foreach (string list in lists)
            {
                Console.WriteLine(list);
            }
            Console.ReadKey();
        }

运行结果为:111,222333

四:OfType的用法

    /// <summary>
        ///  //linq OfType 将以前版本的集合转换为IEnumerable<T>
        /// </summary>
        private static void linqOfType()
        {
            //首先创建一个以前版本的集合
            ArrayList arraylist = new ArrayList();
            //原本希望在这里初始化,但是这个初始化功能不支持以前的版本
            arraylist.Add("111");
            arraylist.Add("222333");
            arraylist.Add("333333333");
            IEnumerable<string> lists = arraylist.OfType<string>().Where(n => n.Length < 8);
            foreach (string list in lists)
            {
                Console.WriteLine(list);
            }
            Console.ReadKey();
        }

运行结果:111、222333


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM