最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#8.0中的索引與范圍功能介紹

 更新時(shí)間:2022年01月28日 10:18:06   作者:痕跡g  
這篇文章介紹了C#8.0中的索引與范圍功能,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

C#8.0中, 新增了一個(gè)索引與范圍的功能, 為訪問序列中的單個(gè)元素或范圍提供了一種簡潔的語法。

在沒有提供索引功能之前, 我們需要訪問序列中的某個(gè)元素, 我們可以利用下標(biāo)或者部分函數(shù)進(jìn)行獲取元素的數(shù)據(jù), 如:獲取數(shù)組中最后一個(gè)元素:

            string[] arr = new string[]
            {
                "冰晶鳳凰",  
                "影流之主",  
                "德瑪西亞",  
                "艾瑞利亞",  
                "寒冰射手"   
            };              

            var str1 = arr.Last(); //寒冰射手
            var str2 = arr[arr.Length - 1];  //寒冰射手

介紹索引

在使用的的過程中, 我們可以直接在數(shù)組集合類的下標(biāo)中,直接聲明索引, 或者間接聲明Index 類型的索引, 關(guān)于索引的使用方法, 如下:

             string[] arr = new string[]
            {
                "冰晶鳳凰",  //^5   
                "影流之主",  //^4
                "德瑪西亞",  //^3
                "艾瑞利亞",  //^2  = ...
                "寒冰射手"   //^1  =arr.Length-1
            };              //^0  =arr.Length  

            //使用索引 ^1 獲取最后一個(gè)元素
            Console.WriteLine($"output:{arr[^1]}"); //output:寒冰射手
            Console.WriteLine("-------End-------");

            //創(chuàng)建索引 Index index=^1 獲取最后一個(gè)元素
            Index index = ^1;
            Console.WriteLine($"output:{arr[index]}"); //output:寒冰射手
            Console.WriteLine("-------End-------");

介紹范圍

8.0中, 提供了Range語法, 可以通過簡單的語法聲明, 即可獲取到序列中的范圍內(nèi)所有元素, 而范圍中,也支持索引的聲明方式來創(chuàng)建范圍, 使用示例如下:

## 下標(biāo)中直接聲明范圍進(jìn)行獲取元素序列

             //使用范圍 [0..2] 獲取索引0和1的元素,不包含末尾索引2的元素
            string[] newarr = arr[0..2];  //冰晶鳳凰、影流之主
            foreach (var r in newarr)
            {
                Console.WriteLine($"output:{r}");
            }
            Console.WriteLine("-------End-------");

            string[] index_range_xarr = arr[0..^1]; //指定開始和結(jié)束范圍,  從0開始到倒數(shù)第二個(gè)
            foreach (var r in index_range_xarr)
            {
                Console.WriteLine($"output:{r}");  //輸出: 冰晶鳳凰、影流之主、德瑪西亞、艾瑞利亞
            }
            Console.WriteLine("-------End-------");

 ## 單獨(dú)創(chuàng)建Range進(jìn)行獲取元素序列

            Range range = 0..2; //單獨(dú)聲明范圍
            string[] newarr = arr[range];  //冰晶鳳凰、影流之主
            foreach (var r in newarr)
            {
                Console.WriteLine($"output:{r}"); //輸出:冰晶鳳凰、影流之主
            }
            Console.WriteLine("-------End-------");

 ## 不指定開始與結(jié)束的范圍 (默認(rèn)獲取所有元素序列)

            string[] index_default_arr = arr[..];// 寫法相當(dāng)于 arr[0..^0],  獲取arr中所有的元素
            foreach (var r in index_default_arr)
            {
                Console.WriteLine($"output:{r}");  //輸出: 冰晶鳳凰 、影流之主、德瑪西亞、艾瑞利亞、寒冰射手
            }

 ## 指定開始或者結(jié)束的范圍

             string[] index_end_arr = arr[..^0];// 寫法相當(dāng)于 arr[0..^0] , 獲取arr中所有的元素
            foreach (var r in index_end_arr)
            {
                Console.WriteLine($"output:{r}"); //輸出: 冰晶鳳凰 、影流之主、德瑪西亞、艾瑞利亞、寒冰射手
            }
            Console.WriteLine("-------End-------");


            string[] index_left_arr = arr[^2..];// 寫法相當(dāng)于 arr[^2..^0], 獲取末尾的最后兩個(gè)元素
            foreach (var r in index_left_arr)
            {
                Console.WriteLine($"output:{r}");  //輸出: 艾瑞利亞 、寒冰射手
            }
            Console.WriteLine("-------End-------");

注:范圍的結(jié)束如果有強(qiáng)制聲明, 如 [0..2] , 那么獲取的元素序列, 最終只是下標(biāo)為 0和1 的元素, 不包含2的元素, 也就是說“末尾”不包含在范圍內(nèi)。

到此這篇關(guān)于C#8.0中的索引與范圍功能的文章就介紹到這了。希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • C#字符串?dāng)?shù)組轉(zhuǎn)換為整形數(shù)組的方法

    C#字符串?dāng)?shù)組轉(zhuǎn)換為整形數(shù)組的方法

    這篇文章主要介紹了C#字符串?dāng)?shù)組轉(zhuǎn)換為整形數(shù)組的方法,涉及C#數(shù)組遍歷與轉(zhuǎn)換的相關(guān)技巧,需要的朋友可以參考下
    2015-06-06
  • C# 擴(kuò)展方法的使用

    C# 擴(kuò)展方法的使用

    這篇文章主要介紹了C# 擴(kuò)展方法的使用,幫助大家更好的理解和學(xué)習(xí)c#編程語言,感興趣的朋友可以了解下
    2020-12-12
  • Winform中進(jìn)行MD5加密的實(shí)例

    Winform中進(jìn)行MD5加密的實(shí)例

    下面小編就為大家?guī)硪黄猈inform中進(jìn)行MD5加密的實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-01-01
  • C#使用非托管代碼直接修改字符串的方法

    C#使用非托管代碼直接修改字符串的方法

    在string方法中,如ToUpper等字符串操作方法,都會(huì)產(chǎn)生一個(gè)新的字符串,這樣增大了運(yùn)行開支。一個(gè)替代方案是通過非托管代碼直接操作字符串。如替代ToUpper方法:
    2013-07-07
  • C# PropertyGrid使用案例詳解

    C# PropertyGrid使用案例詳解

    這篇文章主要介紹了C# PropertyGrid使用案例詳解,本篇文章通過簡要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • C#中static靜態(tài)變量的用法實(shí)例

    C#中static靜態(tài)變量的用法實(shí)例

    這篇文章主要介紹了C#中static靜態(tài)變量的用法,實(shí)例分析了C#中static靜態(tài)變量的含義及具體用法,非常具有參考借鑒價(jià)值,需要的朋友可以參考下
    2014-11-11
  • C# 常用日期時(shí)間函數(shù)(老用不熟)

    C# 常用日期時(shí)間函數(shù)(老用不熟)

    C# 常用日期時(shí)間函數(shù)(老用不熟) ,需要的朋友可以參考下。
    2009-09-09
  • C#異常執(zhí)行重試的實(shí)現(xiàn)方法

    C#異常執(zhí)行重試的實(shí)現(xiàn)方法

    這篇文章主要介紹了C#異常執(zhí)行重試的一種實(shí)現(xiàn)方法,重試模式可以用poll替代,通過示例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2021-08-08
  • C#的WEBBROWSER與JS交互小結(jié)

    C#的WEBBROWSER與JS交互小結(jié)

    這篇文章主要介紹了C#的WEBBROWSER與JS交互方法,詳細(xì)講述了與頁面標(biāo)簽的交互以及數(shù)據(jù)交互的方法,需要的朋友可以參考下
    2014-11-11
  • 詳解C#如何手動(dòng)改變自制窗體的大小

    詳解C#如何手動(dòng)改變自制窗體的大小

    這篇文章主要為大家詳細(xì)介紹了在C#中如何實(shí)現(xiàn)手動(dòng)改變自制窗體的大小,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-03-03

最新評(píng)論

灯塔市| 班戈县| 蒲江县| 民勤县| 土默特左旗| 尼勒克县| 祁门县| 乐至县| 东兰县| 庐江县| 山东省| 石家庄市| 巴马| 博罗县| 鹤庆县| 金华市| 海林市| 扶绥县| 庆元县| 丰原市| 昌图县| 涟源市| 灵台县| 高尔夫| 磐石市| 集安市| 兰溪市| 安陆市| 旺苍县| 砚山县| 宣武区| 保定市| 镇宁| 伊通| 新野县| 宜章县| 政和县| 惠东县| 班戈县| 平罗县| 广汉市|