范围结构在C#8.0中引入。它表示具有开始索引和结束索引的范围。您可以在Range结构提供的StartAt()方法的帮助下,创建一个从指定的起始索引开始到给定集合或序列的末尾的Range对象。换句话说, StartAt()方法返回一个范围,该范围从指定的起始索引开始到给定集合或序列的末尾。
句法:
public static Range StartAt(Index start);
在此,索引开始表示开始索引。
范例1:
// C# program to illustrate
// how to create a range using
// StartAt() method of Range struct
using System;
namespace range_example {
class GFG {
// Main Method
static void Main(string[] args)
{
// Creating range
// using Range constructor
var r1 = new Range(2, 4);
// Creating range
// using Range operator
Range r2 = 1..10;
// Creating a range
// using StartAt() method
var r3 = Range.StartAt(4);
// Displaying all the ranges
Console.WriteLine("Range_1: " + r1);
Console.WriteLine("Range_2: " + r2);
Console.WriteLine("Range_3: " + r3);
}
}
}
输出:
Range_1: 2..4
Range_2: 1..10
Range_3: 4..^0
范例2:
// C# program to illustrate how
// to create a range using
// StartAt() method of Range struct
using System;
namespace range_example {
class GFG {
// Main Method
static void Main(string[] args)
{
// Creating and initializing an array
int[] arr = new int[8] {100, 200, 300,
400, 500, 600, 700, 800};
// Creating a range
// using StartAt() method
var r = Range.StartAt(2);
var new_arr = arr[r];
// Displaying the range
// and the elements
Console.WriteLine("Range: " + r);
Console.Write("Numbers: ");
foreach(var i in new_arr)
Console.Write($" [{i}]");
}
}
}
输出:
Range: 2..^0
Numbers: [300] [400] [500] [600] [700] [800]