C#中的元素类型(关于数组)
请问在C#中,能否将元素类型分别为int,float和double的三个数组放在同一个多维数组中?...
请问在C#中,能否将元素类型分别为int,float和double的三个数组放在同一个多维数组中?
展开
4个回答
展开全部
可以这样实现
object[] arr=new object[2];//将object[]看做一个二维数组,因为它的元素是object类型,可以存储数组
arr[0] = new float[10];//第一个元素存储一个float数组,其他类型同理
arr[1] = new int[5];
((float[])arr[0])[0] = 1.0f;//还原数组,继而操作数组
PS:对于这种方式,觉得没啥意思,除非你有强制的存储格式。约定了哪个arr数组元素存储什么类型的数组,在使用时才可以向下转换还原本来面目
object[] arr=new object[2];//将object[]看做一个二维数组,因为它的元素是object类型,可以存储数组
arr[0] = new float[10];//第一个元素存储一个float数组,其他类型同理
arr[1] = new int[5];
((float[])arr[0])[0] = 1.0f;//还原数组,继而操作数组
PS:对于这种方式,觉得没啥意思,除非你有强制的存储格式。约定了哪个arr数组元素存储什么类型的数组,在使用时才可以向下转换还原本来面目
展开全部
可以的,,你直接定义一个double数组类型就可以了,因为,int float,可以显式转换成double。。不过如果你想得到很正确的数的话, 我建议你不要用float。。因为float定义下的数只是一个近似值。。。约值
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
float和double都会有误差的。只有decimal是精确数字类型。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这没有什么奇怪的,跟indexof这个方法的实现有关系,比如当捕捉到index溢出时,我直接返回-1,表示没有找到,因为你让我到数组外面去找嘛。你可以找array的源代码看看。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询