意外类型所需变量找到值

时间:2017-02-12 13:34:26

标签: java compiler-errors

错误是:"意外类型必需变量找到值",当我分配给toSend.getNextElement() firstElement时。我不明白,因为toSend.getNextElement()不是一个值而是一个对象。

public class Element{
    private int _number;
    private Element _next;
    public Element(int number) {
        _number = number;
        _next = null;
    }

    public int getNumber() {return _number;}

    public Element getNextElement() {return _next;}

    private Element longerMatch(Element eOne,Element eTwo,Element firstElement,int longest){
        if((eOne == null)||(eTwo == null)){
            Element toSend = new Element(longest);
            toSend.getNextElement() = firstElement;
            return toSend;
        }
        else if(eOne.getNumber() > eTwo.getNumber()){
            return longerMatch(eOne,eTwo.getNextElement(),null,0);
        }
        else if(eOne.getNumber() < eTwo.getNumber()){
            return longerMatch(eOne.getNextElement(),eTwo,null,0);
        }
        if(longest == 0){
            return longerMatch(eOne.getNextElement(),eTwo.getNextElement(),eOne,1);
        }
        return longerMatch(eOne.getNextElement(),eTwo.getNextElement(),firstElement,longest+1);
    }
}

2 个答案:

答案 0 :(得分:2)

您无法分配从这样的方法返回的值。如果你想操纵_next,你应该为它设置一个setter方法:

public void setNextElement(Element next) {
    _next = next;
}

答案 1 :(得分:0)

您只能为变量指定值。请参阅Java教程和Java语言规范(JLS)。