求助大神,这个参数重复定义错误是怎么回事…

public static void main(String[] args){
system.out.println(3,5)
}
static double add(int i,double j){
return i+j;
}

static double add(double i,int j){
return i+j;
}

static double add(double i,double j){
return i+j;
}

static double add(float i,int j){
return i+j;
}

提示报错the mathod add(int i,double j)is ambiguous for the type super

system.out.println(3,5)你这句话不报错吗?System.out.println(“3,5”);

你的return 要加上強转把,, 把返回值強转成double类型 ,前面加上这个应该就好了(double)(i+j)

调用出错了 system.out.println(add(3f,5)),要明确参数类型不然怎么区分

add(int i,double j) ,入参是3和5,那你所有的add方法都需要强转,
ambiguous 的意思的“模糊的”,就是不确定哪个add方法

啊,我上面输出语句写错啦,是System.out.println(add(3,5))图片说明

我尝试着把第一个add方法注释掉,代码就不报错了。或者把第二,第四个代码注释掉,就不报错了。不懂为什么图片说明

图片说明图片说明