C#8.0中的索引与范围功能介绍

C#8.0中的索引与范围功能介绍

C#8.0中, 新增了一个索引与范围的功能, 为访问序列中的单个元素或范围提供了一种简洁的语法。

在没有提供索引功能之前, 我们需要访问序列中的某个元素, 我们可以利用下标或者部分函数进行获取元素的数据, 如:获取数组中最后一个元素:

string[] arr = new string[] { "冰晶凤凰", "影流之主", "德玛西亚", "艾瑞利亚", "寒冰射手" }; var str1 = arr.Last(); //寒冰射手 var str2 = arr[arr.Length - 1]; //寒冰射手 介绍索引

在使用的的过程中, 我们可以直接在数组集合类的下标中,直接声明索引, 或者间接声明Index 类型的索引, 关于索引的使用方法, 如下:

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-------"); //创建索引 Index index=^1 获取最后一个元素 Index index = ^1; Console.WriteLine($"output:{arr[index]}"); //output:寒冰射手 Console.WriteLine("-------End-------"); 介绍范围

8.0中, 提供了Range语法, 可以通过简单的语法声明, 即可获取到序列中的范围内所有元素, 而范围中,也支持索引的声明方式来创建范围, 使用示例如下:

## 下标中直接声明范围进行获取元素序列

//使用范围 [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]; //指定开始和结束范围, 从0开始到倒数第二个 foreach (var r in index_range_xarr) { Console.WriteLine($"output:{r}"); //输出: 冰晶凤凰、影流之主、德玛西亚、艾瑞利亚 } Console.WriteLine("-------End-------");

 ## 单独创建Range进行获取元素序列

Range range = 0..2; //单独声明范围 string[] newarr = arr[range]; //冰晶凤凰、影流之主 foreach (var r in newarr) { Console.WriteLine($"output:{r}"); //输出:冰晶凤凰、影流之主 } Console.WriteLine("-------End-------");

 ## 不指定开始与结束的范围 (默认获取所有元素序列)

string[] index_default_arr = arr[..];// 写法相当于 arr[0..^0], 获取arr中所有的元素 foreach (var r in index_default_arr) { Console.WriteLine($"output:{r}"); //输出: 冰晶凤凰 、影流之主、德玛西亚、艾瑞利亚、寒冰射手 }

 ## 指定开始或者结束的范围

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-------");

注:范围的结束如果有强制声明, 如 [0..2] , 那么获取的元素序列, 最终只是下标为 0和1 的元素, 不包含2的元素, 也就是说“末尾”不包含在范围内。

到此这篇关于C#8.0中的索引与范围功能的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持易知道(ezd.cc)。

推荐阅读

    上下标快捷键|上下标快捷键怎么打

    上下标快捷键|上下标快捷键怎么打,,上下标快捷键怎么打上标快捷键:首先,选中需要加上标的字符,然后使用Word快捷键“ Ctrl + Shift + (加号)+

    下标快捷键ps|下标快捷键快

    下标快捷键ps|下标快捷键快,,下标快捷键快word下标快捷键怎么用方法/步骤:1.双击打开需要使用快捷键输入下标的word文档。2.选定需要下标

    ai数字下标快捷键|AI文字快捷键

    ai数字下标快捷键|AI文字快捷键,,1. AI文字快捷键ai中把文字全选的方法是:1.电脑打开AI软件。2.要一次性选择所有文字,点击菜单栏中的选择

    这句话有语法错误

    这句话有语法错误,点心,英语,本文目录这句话有语法错误瑞士最好的化妆品品牌有哪些请英语高手帮忙翻译点心英语怎么说这句话用英语该怎么

    下标快捷键技巧|下标快捷键快

    下标快捷键技巧|下标快捷键快,,下标快捷键快win7系统中打数字的上下标方法:一、 使用快捷键。在Word中使用快捷键进行输入,既方便又快捷。1.

    5元素平板电脑上海维修|五元素平板

    5元素平板电脑上海维修|五元素平板,,五元素平板首先第一步:到自己平板官方网站下载你机子对应的固件包。常见平板的固件下载地址:昂达平板固

    快捷键元符号|符号下标快捷键

    快捷键元符号|符号下标快捷键,,1. 符号下标快捷键一、首先打开Excel表格,鼠标左键拖动选中要更改的文字。二、这时按住Alt键不放,依次输入OE