如何快速将 object[,] 转换为 double[,]? [英] How can I quickly up-cast object[,] into double[,]?

查看:46
本文介绍了如何快速将 object[,] 转换为 double[,]?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用 Microsoft.Office.Interop.Excel 我得到一个 object[,] 类型的二维数组,它包含元素的 double.请注意,索引下限是 1 而不是默认的 0,但我可以轻松处理.

I using Microsoft.Office.Interop.Excel I get returned a 2D array of type object[,] which contains double for elements. Note that the index lower bound is 1 instead of the default 0, but I can deal with that easily.

如何使用.NET 3.5很好地将数组转换为double[,].(我的意思是简洁或紧凑).

How can nicely convert the array into double[,] using .NET 3.5. (by nicely I mean concise, or compact).

注意

double[] values_2 = values.Cast<double>().ToArray();

确实有效,但它按数组扁平化为一维结构.

does work, but it flattens by array into a 1D structure.

推荐答案

object[,] src = new object[2, 3];

// Initialize src with test doubles.
src[0, 0] = 1.0;
src[0, 1] = 2.0;
src[0, 2] = 3.0;
src[1, 0] = 4.0;
src[1, 1] = 5.0;
src[1, 2] = 6.0;

double[,] dst = new double[src.GetLength(0), src.GetLength(1)];
Array.Copy(src, dst, src.Length);

这篇关于如何快速将 object[,] 转换为 double[,]?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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