.NET 相当于 Java 的 List.subList()?
2022-09-04 02:06:19
有没有 Java 的 List.subList()
的 .NET 等效项?IList<T>
使用 LINQ
list.Skip(fromRange).Take(toRange - fromRange)
对于泛型,它是方法。List<T>
GetRange(int, int)
编辑:请注意,这是一个浅层副本,而不是对原始副本的“视图”。我不认为C#提供了确切的功能。
Edit2:正如Kamarey所指出的,你可以有一个只读视图:
List<int> integers = new List<int>() { 5, 6, 7, 8, 9, 10, 11, 12 };
IEnumerable<int> view = integers.Skip(2).Take(3);
integers[3] = 42;
foreach (int i in view )
// output
以上将打印7,42,9。