我有这个简单的方法在这里:退货声明不起作用!
private Node addItem(Node current, Node target) {
if (current.data.getId() < target.data.getId()) {
if (current.larger == null) {
current.larger = target;
Log.i("BinaryTree", "Added item: " + target.data.getId());
return target;
}
return addItem(current.larger, target);
} else {
if (current.smaller == null) {
current.smaller = target;
Log.i("BinaryTree", "Added item: " + target.data.getId());
return target;
}
return addItem(current.smaller, target);
}
}
当我调试它,该代码获取到线“将目标;”,只是跳过它,并进入最后的return语句 - “返回的addItem(电流.smaller,target);'! 我从来没有见过这样的跆拳道?!?!
我应该走出去的方法,如果达到return语句 –
哦,等等等等,这是一个递归方法<_ < –
也许你可以看看字节码。你只能在调试器中获得双重回报,或者也可以在程序自行运行时获得双重回报? – toto2