我正在尝试编写一种递归方法,该方法打印出数组的每个索引。我的手类使用长度为5的Card []卡来表示五张手。它可以工作,但是有更好的方法来代替索引的整数参数吗?请帮忙。

public static void printHandForward (Hand hand, int index) {
    if(index == hand.cards.length) {
        return;
    }
    else {
        Card.printCard(hand.cards[index]);
        index++;
        printHandForward(hand, index);
    }
}

最佳答案

如果必须使用递归,则必须以某种方式使用int参数调用此方法。

您可以简单地添加一个仅重载Hand的重载,该重载调用您的当前方法:

public static void printHandForward(Hand hand) {
  printHandForward(hand, 0);
}

但是,避免回避并仅使用增强的for语句会容易得多。

关于java - 递归方法按顺序打印每个数组索引的值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34190927/

10-11 17:16