Java方法声明

Java方法声明,java,methods,integer,Java,Methods,Integer,我试图为我的程序声明一个方法,该方法只接受一个5位整数,对于整数的每一位,从程序中读取一个值并打印出来。我明白这不是很清楚,但我很难传达我的意思。我知道这将是一种for循环,可以单独读取整数的每个数字,直到某个数字达到5。类似于charAt()字符串方法,但适用于数字 您可以非常轻松地将整数转换为字符串,并使用charAt() String parseableString=Integer.toString(yourInt); for(int i=0;i

我试图为我的程序声明一个方法,该方法只接受一个5位整数,对于整数的每一位,从程序中读取一个值并打印出来。我明白这不是很清楚,但我很难传达我的意思。我知道这将是一种for循环,可以单独读取整数的每个数字,直到某个数字达到5。类似于charAt()字符串方法,但适用于数字

您可以非常轻松地将整数转换为字符串,并使用
charAt()

String parseableString=Integer.toString(yourInt);
for(int i=0;i
请仔细阅读“模”。这是一个基本操作,可通过Java中的符号
%
获得

除法是余数。所以

 System.out.println("Last digit: "+(12345 % 10));
将打印5。自己弄清楚如何得到其他数字


作为练习,了解如何打印二进制数字。

您可以除法并取模

while(n > 0) {
  System.out.println("Digit " + (n % 10));
  n /= 10;
}

如果您使用的是任何基数,这很好:您只需用10代替基数(除以基数意味着将所有内容向左移动,取模意味着得到最后一个数字)。

真是一个难题。哎哟想一个办法把数字变成数字。我试过了,对不起,我应该在上面说,但是我有另一种方法读取数字0-9,所以它不会读取相同的字符,我需要它来读取数字。谢谢,还有sorry@user1701604然后,您可以使用
Integer.parseInt(parseableString.charAt(i))
将其解析回int,但正如其他人所说,这是一种黑客操作,不需要进行转换,但它可以在必要时完成这项工作。在这种情况下,模可能是更好的方法。因此,如果我从左到右读取数字,我理解模(%10,%100,%1000)从右到左,但是如果我想从左到右,同时一次只读取一个数字,该怎么办,不是所有的数字都是从左到右的吗?@user1701604我不知道模在这种情况下是混乱的,我真的不认为转换成字符串然后再转换回这样一个简单的情况有什么问题,理论上是不好的,但实际上很容易。
while(n > 0) {
  System.out.println("Digit " + (n % 10));
  n /= 10;
}