java - 坚持使用 Java 的递归方法?

标签 java recursion methods

我正在尝试创建一种将整数值转换为单词字符串的方法。这是我的代码:

    public static void num(int n)
     {  String[] numbers = {"one", "two", "three", "four", "five" , "six", "seven", "eight", "nine"};
    if(n==0)
         System.out.println(numbers[n]);
    else
    {
        String numStr = Integer.toString(n);
    }

我不知道如何在此之后再次调用该方法。 一个示例运行是 1234,然后将转换为一二三四。

最佳答案

请注意,您不包括零,我不明白您为什么这样做:String numStr = Integer.toString(n);

你想要做的是这样的:

public static void num(int n){
    String[] numbers = {"zero","one", "two", "three", "four", "five" , "six", "seven", "eight", "nine"};
    if(n<10){
         System.out.println(numbers[n]);
         return;
    }
    else{
         num(n/10);
         System.out.println(numbers[n%10]);
    }

}

您可以像这样使用此方法:

public static void main(String args[]){
    num(1234);
}

关于java - 坚持使用 Java 的递归方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35332682/

相关文章:

java - Eclipse 中方法的绿色项目符号上的小时钟是什么意思?

ios - 调用其他类的委托(delegate)方法

java - Eclipse中的refreshLocal无法正常工作

Java Brick Breaker - 从数组中删除砖 block 而不移动

java - 迷宫递归 - 少数输入出错(可能是逻辑错误)

c# - 为什么这个递归搜索返回不相关的结果?

methods - "Method [show] does not exist"是什么意思?

java - BackgroundColorSpan隐藏文本选择颜色android

java - 那里有 javax.imageio 的好替代品吗?

c++ - 当返回类型是 vector 容器时,是否有在 c++ 中返回 Null 的解决方法?