using System;
int[] numbers = {
// index from start index from end
2, // 0 ^5
3, // 1 ^4
5, // 2 ^3
7, // 3 ^2
11 // 4 ^1
};
//before:
var last = numbers[numbers.Length - 1];
//last is 11
var penultimate = numbers[numbers.Length - 2];
//penultimate is 7
Console.WriteLine("last: " + last);
Console.WriteLine("penultimate: " + penultimate);
//in version 8:
last = numbers[^1];
//last2 is 11
penultimate = numbers[^2];
//penultimate2 is 7
Console.WriteLine("last: " + last);
Console.WriteLine("penultimate: " + penultimate);
| Индекс 0 совпадает с sequence[0]. Индекс ^0 совпадает с sequence[sequence.Length]. Обратите внимание, что sequence[^0] создает исключение так же, как и sequence[sequence.Length]. Для любого числа n индекс ^n совпадает с sequence.Length - n. |