【初心者・ネタ】Java質問・相談スレ【大歓迎】
■ このスレッドは過去ログ倉庫に格納されています
0356デフォルトの名無しさん
NGNG(↓プログラムの一部)
public void remove(Object element){
if(next==null){
}else if(next.body.equals(element)){
if(next.next==null){
next=null;
}else{
next=next.next;
}
}else{
next.remove(element);
}
}
でコンパイルは通ったのですが、実行するとjava.lang.NullPointerException
というエラーがでました。
そこで下のように、3行目にreturn;を加えるとエラーが出なくなりました。
なぜでしょうか?必要ないように感じるのですが…
「next==nullのとき、何もしない」って書くにはなぜreturnが必要なのでしょうか?
多分 return を理解してないように思うので説明お願いします。
public void remove(Object element){
if(next==null){
return;
}else if(next.body.equals(element)){
if(next.next==null){
next=null;
}else{
next=next.next;
}
}else{
next.remove(element);
}
}
■ このスレッドは過去ログ倉庫に格納されています