af, ae и be - целые числа, и здесь я проверяю, равны ли они 0. Если нет, я хочу вернуть значение null. Если они равны нулю, я хочу вернуть glorpPoly. По какой-то причине, однако, он всегда возвращает null, даже когда условие выполняется ... кто-нибудь знает, почему? все эти значения относятся к типу нашего учителя, созданного под названием MyDouble. все они были инициализированы для этого значения, но это все еще не работает.Если инструкция else не работает должным образом
MyDouble af = a.multiply(poly.c);
MyDouble ae = a.multiply(poly.b);
MyDouble bf = b.multiply(poly.c);
MyDouble cf = c.multiply(poly.c);
MyDouble be = b.multiply(poly.b);
MyDouble ad = a.multiply(poly.a);
MyDouble ce = c.multiply(poly.b);
MyDouble bd = b.multiply(poly.c);
MyDouble cd = c.multiply(poly.a);
//Adding the the variables and creating new coefficients
MyDouble newA = af;
MyDouble newB = ae.add(bf);
MyDouble newC = cf.add(be).add(ad);
MyDouble newD = ce.add(bd);
MyDouble newE = cd;
MyDouble zero = new MyDouble(0)
if(af != zero && ae !=zero && be != zero){
return null;
}
else{
MartianPolynomial glorpPoly = new MartianPolynomial(newC,newD,newE);
return glorpPoly;
}
}
'0! = Zero'. Это даже компилируется? – clcto
Не должно быть, если (af! = 0 && ae! = 0 && be! = 0) (если они являются ints? – dcp
Вы не можете: 'if ((af * ae * be)! = 0) '? –