亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

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

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

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

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

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

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

介紹索引

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

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

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

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

介紹范圍

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

## 下標中直接聲明范圍進行獲取元素序列

             //使用范圍 [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ù)第二個
            foreach (var r in index_range_xarr)
            {
                Console.WriteLine($"output:{r}");  //輸出: 冰晶鳳凰、影流之主、德瑪西亞、艾瑞利亞
            }
            Console.WriteLine("-------End-------");

 ## 單獨創(chuàng)建Range進行獲取元素序列

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

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

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

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

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


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

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

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

相關(guān)文章

  • Unity實現(xiàn)文本轉(zhuǎn)貼圖

    Unity實現(xiàn)文本轉(zhuǎn)貼圖

    這篇文章主要為大家詳細介紹了Unity實現(xiàn)文本轉(zhuǎn)貼圖,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-05-05
  • WPF+ASP.NET SignalR實現(xiàn)后臺通知功能的示例代碼

    WPF+ASP.NET SignalR實現(xiàn)后臺通知功能的示例代碼

    本文以一個簡單示例,簡述如何通過WPF+ASP.NET SignalR實現(xiàn)消息后臺通知以及數(shù)據(jù)的實時刷新,僅供學(xué)習(xí)分享使用,如有不足之處,還請指正
    2022-09-09
  • C#無限欄目分級程序代碼分享 好東西

    C#無限欄目分級程序代碼分享 好東西

    C#無限欄目分級程序代碼分享 好東西...
    2006-12-12
  • C#如何自定義線性節(jié)點鏈表集合

    C#如何自定義線性節(jié)點鏈表集合

    C#如何自定義線性節(jié)點鏈表集合,這篇文章主要為大家詳細介紹了C#基于泛型的自定義線性節(jié)點鏈表集合示例,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • c#讀寫注冊表示例分享

    c#讀寫注冊表示例分享

    這篇文章主要介紹了c#讀寫注冊表示例,示例中有詳細注釋,大家參考使用吧
    2014-01-01
  • 詳解c# 切片語法糖

    詳解c# 切片語法糖

    這篇文章主要介紹了c# 切片語法糖的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)c#,感興趣的朋友可以了解下
    2020-09-09
  • C#調(diào)用CMD命令實例

    C#調(diào)用CMD命令實例

    這篇文章主要介紹了C#調(diào)用CMD命令實例本文只是給出一個比較簡單的、入門級的例子,更多高級的操作技巧請參閱相關(guān)文章,需要的朋友可以參考下
    2014-08-08
  • automation服務(wù)器不能創(chuàng)建對象 解決方法

    automation服務(wù)器不能創(chuàng)建對象 解決方法

    本文主要介紹如何解決“automation服務(wù)器不能創(chuàng)建對象”錯誤,從而解決Visual Studio.Net不能正常使用的問題,需要的朋友可以參考下。
    2016-06-06
  • 使用C#發(fā)送Http請求實現(xiàn)模擬登陸實例

    使用C#發(fā)送Http請求實現(xiàn)模擬登陸實例

    本文主要介紹了使用C#發(fā)送Http請求實現(xiàn)模擬登陸實例,模擬登陸的原理簡單,想要了解的朋友可以了解一下。
    2016-10-10
  • C#處理JPEG頭信息的方法

    C#處理JPEG頭信息的方法

    相信大家肯定都看過用C或C++處理JPEG頭信息的程序了,我也看了,不過因為我不懂C,看得我頭疼。所以我還是決定用C#來寫吧
    2013-05-05

最新評論