A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 陈圳 于 2013-2-23 13:25 编辑

通过下面这种方式也可以获得,但是学习了递归之后,我想用递归的方式做出来.感觉难以下手.大家一起分析一下.
public int[] getNum(int num)  //获取一个数值每一位的方法
        {
                int arr[]=new int[4];            //假设数值的位数为4,就是千位.
                for(int i=(arr.length-1),x=10;i>=0;i--)
                {
                        arr=num%x;   //取一个整数的每一位数的方法 %10得低位,从个位开始把值赋给arr,
                        num/=x;//            除10使数减少.因为最低位已经取得了.
                }
                return arr;   //这个数组里存储着数值的每一位
        }

评分

参与人数 1黑马币 +9 收起 理由
李培根 + 9 赞一个!

查看全部评分

2 个回复

倒序浏览
  1.         public static void getNum(int num)  //获取一个数值每一位的方法,倒序
  2.     {
  3.                 if(num/10==0) {
  4.                         System.out.println(num%10);//最高位
  5.                 }else{
  6.                         System.out.println(num%10);
  7.                         getNum(num/10);
  8.                 }  
  9.     }
复制代码
为了方便我就直接打印了,可以倒序存进数组再返回。

评分

参与人数 1黑马币 +9 收起 理由
李培根 + 9 赞一个!

查看全部评分

回复 使用道具 举报
您要的答案:
  1. public class Test
  2. {
  3.         int[] arr=new int[4];//将数组设置为成员变量

  4.         private int index=3;//数组的索引

  5.         public static void main(String[] args)
  6.         {
  7.                 Test t=new Test();
  8.                 t.recursion(1000);

  9.                 for (int i=0;i<t.arr.length;i++)
  10.                 {
  11.                         System.out.println(t.arr[i]);
  12.                 }


  13.         }

  14.         public void recursion(int value)
  15.         {
  16.                 if (value<10)//递归出口,如果递归到了个位数,也就是递归该结束了
  17.                 {
  18.                         arr[index]=value;
  19.                         return;
  20.                 }
  21.                 else
  22.                 {
  23.                         arr[index--]=value%10;//将value的最后一位数放在数组最后面,然后递归
  24.                         recursion(value/10);//递归
  25.                 }

  26.         }
  27. }
复制代码

评分

参与人数 1黑马币 +9 收起 理由
李培根 + 9 赞一个!

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马