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 所以第一位是1n=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+" ");}