网站首页 文章专栏 C# 范围(Range) 语法
在 C# 8.0 中引入了一种新的语法特性,叫做范围(Range)。范围语法允许你通过简单的方式来截取字符串、数组或者其他支持索引访问的集合的部分内容。
在 C# 8.0 中引入了一种新的语法特性,叫做范围(Range)。范围语法允许你通过简单的方式来截取字符串、数组或者其他支持索引访问的集合的部分内容。
假设有一个字符串 str:
var str = "123abc一二三";
你可以使用范围语法来截取字符串的一部分。范围使用两个点 ..
表示,其基本形式为 start..end
,表示从 start
索引到 end-1
索引的范围。如果 start
省略则表示从开头开始,如果 end
省略则表示到末尾结束。
var newStr = str[..]; // 相当于 str.Substring(0, str.Length)
Console.WriteLine(newStr); // 输出:123abc一二三
var subStr = str[3..]; // 从索引 3 开始到末尾
Console.WriteLine(subStr); // 输出:abc一二三
###示例 3:从开头到某个索引之前
var subStr = str[..3]; // 从开头到索引 3 之前
Console.WriteLine(subStr); // 输出:123
var subStr = str[3..6]; // 从索引 3 到索引 5(6-1)
Console.WriteLine(subStr); // 输出:abc
范围语法 ..
提供了一种简洁而强大的方式来处理字符串或者数组的子集。它特别适合于处理索引范围而无需手动计算结束索引。记住范围是左闭右开的,即包含起始索引但不包含结束索引。
这种语法在处理大量字符串或数组索引时尤为有用,可以让你的代码更简洁和易读。