1.(最简单暴力)直接将数字转换为字符串,然后转换为字符数组输出。
int n=12345;
char[] chars=String.valueOf(n).toCharArray();
for(int j=0;j<chars.length;j++){
System.out.print(chars[j]+" ");
}
2.整除法。
int n=12345;
List<Integer> list=new ArrayList<Integer>();
for(int i=10000;i>=1;i/=10){
list.add(n/i);//将商添加到list中,就是当前的位数。12345/10000=1 所以第一位是1
n=n-(n/i)*i;//用原来的数减去上一位的大小 12345变为2345
}
for(int x:list){
System.out.print(x);
}
3末位取余法。(取出来为倒序)
//依次得到一个数的每一位(从后往前)
int n=12345;
int[] a = new int[5];
for(int i=0;i<5;i++){
a[i] = n%10; //除以10取余数就是最后一位
n /= 10;
}
for(int x:a){
System.out.print(x+" ");
}