猿问

以下代码正确,下面我想修改vPt内容,该如何实现呢?

例如:
double[] nPt = new double[3];
nPt[0] = 60.0 / 1000.0;
nPt[1] = 35.0 / 1000.0;
nPt[2] = 0.0;
object vPt = null;
vPt = nPt;
//以上代码正确,下面我想修改vPt内容,该如何操作?

明月笑刀无情
浏览 112回答 2
2回答

哔哔one

这个问题看上去很简单,只需要一行代码就能完成:o 为object类型double[] d=(double[]) o;这行代码在编译时是没有问题的,但在实际运行时,有可能会有引发异常。主要是没有对数据类型进行检查,不能保证o对象可以转换为 double[] 类型。我们需要改进下:下面二种都可以达到我们的目的。is 和 as 是 C# 提供的以安全的方式执行类型强制转换的操作符,用法如下。is 操作符验证对象的类型是不是自己希望的。如果是的话,则执行转换if(o is double[])double[] d=(double[]) o;as 操作符取一个对象和一个类型作为其左边和右边的操作数。runtime 会尝试将对象转换成指定的类型,若转换成功,就返回转换成功后的结果给 d,如果转换失败,返回 null 给 d。double[] d= o as double[];if(d!=null) 判断下是否转换过来了{数据转换正确后,执行业务处理。}

慕田峪4524236

这个必须自己写个修改函数,例如private void EditObject(int _num, double _data,object _obj){double[] temp = (double[])_obj;temp[_num] = _data;_obj = temp;}调用函数更改
随时随地看视频慕课网APP
我要回答