我需要编写一个通过修改当前多项式来导出的方法。我可以写一个与返回类型一起工作的。这是代码:
public PolynomialSortedList differentiate() {
PolynomialSortedList res = new PolynomialSortedList();
for(PolyNode tmp = poly; tmp != null; tmp = tmp.next)
{
if(tmp.exp != 0)
res.addTerm(tmp.coef * tmp.exp, tmp.exp - 1 );
}
return res;
}
如何使用代码的上半部分将其变为无效:
public class PolynomialSortedList implements Polynomial {
private PolyNode poly;
private double TOLERANCE = 0.00000001;
public PolynomialSortedList() {
poly = null;
}
private static class PolyNode {
int coef;
int exp;
PolyNode next;
PolyNode(int coef, int exp,PolyNode next) {
this.coef = coef;
this.exp = exp;
this.next = next;
}
}
}
答案 0 :(得分:1)
假设您通过说myPolyList.differentiate();
来调用区分,那么您可以尝试使用return res;
交换this.poly = res.poly;
。唯一的问题就是现在,由于poly
为private
而且你无法从polyList获取第一个多边形,因此不会有效。
编辑:关于如何设置程序的更多信息将帮助我提供更具体的答案。