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.Objectif(S.elementAt(i)==((S1.elementAt(j)).elementAt(i)+(S2.elementAt(j)).elementAt(i)+(S3.elementAt(j)).elementAt(i))){没
问题描述:
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();