Java 单独显示数字

Java 单独显示数字,java,Java,我有以下问题的麻烦 “编写一个displayDigits方法,该方法接收介于1和之间的整数 99999并以数字序列的形式显示,分隔每对 由两个空格组成的数字。例如,整数4562应显示为4 5 6 2“ 这就是我目前拥有的,我知道它会向后显示数字,但不会使用“error:missing return statement”错误进行编译 public static int displayDigits(int num1) { for (int i=0; num1>0; i++) {

我有以下问题的麻烦

“编写一个displayDigits方法,该方法接收介于1和之间的整数 99999并以数字序列的形式显示,分隔每对 由两个空格组成的数字。例如,整数4562应显示为4 5 6 2“

这就是我目前拥有的,我知道它会向后显示数字,但不会使用
“error:missing return statement”
错误进行编译

public static int displayDigits(int num1)
{
    for (int i=0; num1>0; i++)
    {
        return(num1 % 10)
    }
}
这本书指出,我们只使用
%
/
来解决这个问题。请帮帮我!!我已经为此工作了几个小时…

请执行以下操作:

String resultNumber = "";
for(int i = 0; i < num1.toString().length(); i++)
    resultNumber += num1.toString().substring(i, i+1) + " ";
resultNumber = resultNumber.substring(0, resultNumber.length() - 2);
String resultNumber=“”;
对于(int i=0;i

当num1为4564时,resultNumber为“4 5 6 4”,这适用于任何数字(在整数的最小值和最大值之间)

循环后需要一个return语句。因为如果num1为空,循环将永远不会执行。你明白
displaydights
之前的
int
是什么意思吗?您了解for循环是如何工作的吗?
return
的作用是什么?此外,尽管被称为“displaydights”,但您的方法不会再次尝试显示。此外,如果要在该函数中生成带有空格的内容,则需要返回一个字符串。该方法应该显示内容(即调用
System.out.print()
),而不是返回内容,因此将返回类型更改为
void
,并删除
return
语句。这样做是正确的,但您需要一个字符串变量来存储数字。这样你就可以在字符串的前面加上一个大头钉来颠倒数字的顺序,因为正如你所说的那样,该方法将数字倒过来。OP指出,作业要求他们用
%
/
算法来解决问题。虽然这样做可行,但请务必阅读整个问题。OP表示,目标是仅使用
%
/
完成此操作。此程序具有完整的逻辑,可以提取到方法中。不知道为什么会被否决。
public static void main(String... args)
{
    int i=4562;
    String str ="";
    int rem;
    int q;
    while(true)
    {
        q = i/10;
        rem = i%10;
        if(rem==0)
            break;
        str +=" "+rem;
        i=q;

    }


    StringBuilder builder = new StringBuilder(str);
    System.out.println(builder.reverse());


}
public static void displayDigits(int num1) {
    String result = "";
    for (int i=0; num1>0; i++) {
        if(i>0) result = " " + result;
        result = num1%10 + result;
        num1 /= 10;
    }
    System.out.println(result);
}