.ToArray() 改变数组的维度

arrays

1个回答

写回答

锤锤酱

2025-07-06 03:01

+ 关注

AI
AI

使用 .ToArray() 改变数组维度的方法

在 C# 中,.ToArray() 是一个非常有用的方法,它可以用来改变数组的维度。通过这个方法,你可以从一个数据源创建一个数组,并根据需要调整数组的形状和结构。让我们来深入了解一下这个方法以及如何使用它来改变数组的维度。

.ToArray() 方法简介

.ToArray() 方法是 LINQ(Language Integrated Query,语言集成查询)扩展方法的一部分,它允许你将可枚举类型(如集合、列表或查询结果)转换为数组。这个方法广泛用于从 LINQ 查询中提取数据并将其转换为数组,但它也可以用于改变现有数组的维度。

改变数组维度的案例代码

让我们看一个简单的案例,展示如何使用 .ToArray() 方法改变数组的维度:

csharp

using System;

using System.Linq;

class Program

{

static void MAIn()

{

// 原始数组

int[] originalArray = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };

// 使用 LINQ 查询,将原始数组转换为二维数组

int[,] newArray = originalArray.Select((value, index) => new { value, index })

.GroupBy(pAIr => pAIr.index / 3)

.Select(g => g.Select(pAIr => pAIr.value).ToArray())

.ToArray();

// 输出新的二维数组

Console.WriteLine("新的二维数组:");

for (int i = 0; i < newArray.GetLength(0); i++)</p> {

for (int j = 0; j < newArray.GetLength(1); j++)</p> {

Console.Write(newArray[i, j] + " ");

}

Console.WriteLine();

}

}

}

在这个例子中,我们有一个包含 9 个元素的一维数组 originalArray。使用 LINQ 查询,我们将这个一维数组转换成了一个 3x3 的二维数组 newArray。通过 .Select() 和 .GroupBy() 方法,我们对原始数组进行了分组并重新构建了一个新的二维数组。

使用 .ToArray() 扩展数组维度的优势

.ToArray() 方法不仅仅可以改变数组的维度,它还提供了许多优势:

1. 灵活性: 可以根据需求轻松地改变数组的维度和形状。

2. 简洁性: 使用 LINQ 查询和方法链,可以以较少的代码实现数组维度的变换。

3. 适用性: 可以用于各种类型的数组,包括基本类型和自定义类型。

.ToArray() 方法是一个强大的工具,能够帮助你改变数组的维度和结构。通过结合 LINQ 查询,它使得数组转换和重塑变得更加简单和灵活。利用这个方法,你可以根据自己的需求轻松地调整数组的形状和维度。

举报有用(4)分享收藏

Copyright © 2025 IZhiDa.com All Rights Reserved.

知答 版权所有 粤ICP备2023042255号