早教吧 育儿知识 作业答案 考试题库 百科 知识分享

if(S.elementAt(i)==(((Vector)S1.elementAt(j)).elementAt(i)+((Vector)S2.elementAt(j)).elementAt(i)+((Vector)S3.elementAt(j)).elementAt(i)))其中变量定义如下:VectorS=newVector();//一维数组VectorS1=newVector();//二维数组VectorS2=n

题目详情
if(S.elementAt(i)==(((Vector)S1.elementAt(j)).elementAt(i)+((Vector)S2.elementAt(j)).elementAt(i)+((Vector)S3.elementAt(j)).elementAt(i)))
其中变量定义如下:
Vector S=new Vector();//一维数组
Vector S1=new Vector(); //二维数组
Vector S2=new Vector();//二维数组
Vector S3=new Vector();//二维数组
为什么会有如下的报错,望大侠们指教,要怎么处理才能对呢?
报错:
运算符 + 不能应用于 java.lang.Object,java.lang.Object
if(S.elementAt(i)==((S1.elementAt(j)).elementAt(i)+(S2.elementAt(j)).elementAt(i)+(S3.elementAt(j)).elementAt(i))){
没说清楚,补充下
因为我S1中添加的元素是double型的
好比Vector S1=new Vector(); //二维数组
Vector s1=new Vector();
S1.addElement(s1);
▼优质解答
答案和解析
Vector S1=new Vector(); //二维数组
里面的Vector没指定具体类型,所以它们取出来都是Object,这里你需要显式的转型为Double
或者语句改为:
Vector S1=new Vector();