2017-02-12 12 views
1

firstElementtoSend.getNextElement()を割り当てると、エラーが発生しました。 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); 
    } 
} 
+1

あなたはそれを次のように切り替える必要があるように見えます:firstElement = toSend.getNextElement();私はあなたがメソッドに値を割り当てることはできないと思います – zombie

答えて

2

このような方法で返される値に割り当てることはできません。あなたが_nextを操作したい場合、あなたはそれのためのセッターメソッドは、必要があります。

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

あなただけの変数に値を割り当てることができます。 JavaチュートリアルとJava言語仕様(JLS)を参照してください。

関連する問題