什么是提取一个矩形阵列在C#中的一维数组的最佳方式? [英] What's the best way to extract a one-dimensional array from a rectangular array in C#?

查看:187
本文介绍了什么是提取一个矩形阵列在C#中的一维数组的最佳方式?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

说我有一个长方形的字符串数组 - 而不是一个交错数组

Say I have a rectangular string array - not a jagged array

string[,] strings = new string[8, 3];

什么来提取从该(一个单行或单列)的一维阵列的最佳方法?我能做到这一点的,循环的,当然,但我希望.NET内置了一个更优雅的方式。

What's the best way to extract a one-dimensional array from this (either a single row or a single column)? I can do this with a for loop, of course, but I'm hoping .NET has a more elegant way built in.

奖励积分,用于将提取的字符串数组对象数组。

Bonus points for converting the extracted string array to an object array.

推荐答案

对于矩形阵列:

string[,] rectArray = new string[3,3] { 
    {"a", "b", "c"}, 
    {"d", "e", "f"}, 
    {"g", "h", "i"} };

var rectResult = rectArray.Cast<object>().ToArray();

和一个交错数组:

string[][] jaggedArray =  { 
    new string[] {"a", "b", "c", "d"}, 
    new string[] {"e", "f"}, 
    new string[] {"g", "h", "i"} };

var jaggedResult = jaggedArray.SelectMany(s => s).Cast<object>().ToArray();

这篇关于什么是提取一个矩形阵列在C#中的一维数组的最佳方式?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆