using System;
public class SpanExample
{
public static void Main()
{
// 创建一个数组
int[] numbers = { 1, 2, 3, 4, 5 };
// 使用 Span 包装数组
Span<int> span = numbers.AsSpan();
// 修改 Span 中的元素,原数组也会被修改
span[0] = 10;
// 输出修改后的数组
Console.WriteLine(string.Join(", ", numbers)); // 输出: 10, 2, 3, 4, 5
// 使用 Slice 方法获取子 Span
Span<int> subSpan = span.Slice(1, 3);
// 修改子 Span 中的元素
subSpan[0] = 20;
subSpan[1] = 30;
// 输出修改后的数组
Console.WriteLine(string.Join(", ", numbers)); // 输出: 10, 20, 30, 4, 5
}
}
Span<T> 是 C# 7.2 引入的一个类型,它提供了一种安全且高效的方式来访问和操作连续的内存区域。numbers,然后使用 AsSpan() 方法将其转换为 Span<int>。Span 修改数组中的元素,并且这些修改会反映到原始数组中。Slice(start, length) 方法用于从 Span 中提取一个子范围,返回一个新的 Span,并且对子 Span 的修改也会反映到原始数组中。上一篇:c# double转int
下一篇:c# httplistener
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站