c#中 object 二维数组里面的值如何进行类型转换?
object[,]bottomDepth=newobject[3,2]{{"a",400},{"b",1400},{"c",1950}};for(inti=0;i<bot...
object[,] bottomDepth = new object[3, 2] {{ "a", 400 }, {"b",1400}, {"c",1950}};
for (int i = 0; i < bottomDepth.Length;i++ )
{float aa = ( float) (bottomDepth[i,1]) ;
.......
}
把第二列的数字取出来做强制转换(我要做数学运算),运行时提示“指定的转换无效”,怎么办呢? 展开
for (int i = 0; i < bottomDepth.Length;i++ )
{float aa = ( float) (bottomDepth[i,1]) ;
.......
}
把第二列的数字取出来做强制转换(我要做数学运算),运行时提示“指定的转换无效”,怎么办呢? 展开
展开全部
首先你的for循环是错误额,
bottomdepath作为一个2为数组应该通过
GetLength(0) 获取 其某一维 的 长度..
[3,2] 第一wei 长度3,第二维 为2 也就是,,3 行两列。
不能采用length 会 得到所有的 item.的长度.
至于出现了转换无效..我感觉是因为object是一个引用类型,(bottomDepth[i,1]) 也返回一个引用类型,而float是一个值类型,...
你可以这样。
float aa = float.Parse((bottomDepth[i, 1]).ToString());
先把执行类转换为string. 然后通过float,Parse 方法转换为float。
bottomdepath作为一个2为数组应该通过
GetLength(0) 获取 其某一维 的 长度..
[3,2] 第一wei 长度3,第二维 为2 也就是,,3 行两列。
不能采用length 会 得到所有的 item.的长度.
至于出现了转换无效..我感觉是因为object是一个引用类型,(bottomDepth[i,1]) 也返回一个引用类型,而float是一个值类型,...
你可以这样。
float aa = float.Parse((bottomDepth[i, 1]).ToString());
先把执行类转换为string. 然后通过float,Parse 方法转换为float。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
bottomDepth.Length
这里是二维数组,它的Length表示所以元素的数目总和
你的循环,应该是取得第一维的长度
转换,最好用类型.Parse()或Convert方法
正确代码如下:
for (int i = 0; i < bottomDepth.GetLength(0);i++ )
{
float aa = float.Parse(bottomDepth[i,1].ToString()) ;
Console.WriteLine(aa);
}
这里是二维数组,它的Length表示所以元素的数目总和
你的循环,应该是取得第一维的长度
转换,最好用类型.Parse()或Convert方法
正确代码如下:
for (int i = 0; i < bottomDepth.GetLength(0);i++ )
{
float aa = float.Parse(bottomDepth[i,1].ToString()) ;
Console.WriteLine(aa);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
object[,] bottomDepth = new object[3, 2] { { "a", 400 }, { "b", 1400 }, { "c", 1950 } };
for (int i = 0; i < bottomDepth.GetLength(0); i++)
{
float aa = Convert.ToSingle((bottomDepth[i, 1]));
Console.WriteLine(aa);
}
for (int i = 0; i < bottomDepth.GetLength(0); i++)
{
float aa = Convert.ToSingle((bottomDepth[i, 1]));
Console.WriteLine(aa);
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Convert.ToFloat()
因为C#不支持object 到float的自动转换.
因为C#不支持object 到float的自动转换.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
float aa=float.Parse(buttomdepth[i,1].ToString())
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |