Да. Вы можете сделать параметр в отображаемом втором методе «действовать» как необязательный параметр. В приведенном ниже описании метода мы по существу делаем параметр Node Type как массив узлов, который может быть передан как пустой. Поскольку нам нужен только один параметр для нашего метода, тогда нам нужны только предоставленные данные Node, содержащиеся в элементе Index of 0 (первый элемент массива).
В самом мы объявляем переменную Node, который был тот же тип и имя, что ваш параметр был так, чтобы устранить путаницу в коде тела метода и мы предлагаем по умолчанию 0 (по умолчанию может быть методом все что пожелаете). Затем мы проверяем новый параметр arrayInfo [] array, чтобы увидеть, есть ли что-либо, и если бы мы применили эти данные из первого элемента массива headerInfo [] (поскольку мы используем только один параметр для этого метода) новая переменная типа узла h. args [] параметр для основной метод в классе делает то же самое.
public void reverse(Node... headerInfo){
Node h = 0;
if (headerinfo.length != 0) { h = headerInfo[0]; }
if(h.next==null){
System.out.print(h.data+" ");
return;
}
reverse(h.next);
System.out.print(h.data+" ");
}
Теперь метод можно можно назвать обратной() или назад (голова)
EDIT:
Whops ...Майк бил меня к нему :)
вызов 'reverse (head)' непосредственно, сделать метод общедоступным, поэтому он будет доступен. – YoungHobbit
Лучше, чем два метода. Очень часто существует публичный метод, вызывающий частный рекурсивный метод с дополнительными параметрами. –
@YoungHobbit Мой основной класс не имеет доступа к головному узлу. – idude