SY郑 2022-06-09 09:40 采纳率: 66.7%
浏览 49
已结题

java数值倒序返回值

问题遇到的现象和发生背景

做东西时用到的

问题相关代码,请勿粘贴截图
public static int fanzhuan(int s) {
        int a = 0;
         while(s!=0){
                 a=s%10;
                System.out.print(a);
                s=s/10; 
            }
         return a ; 
        
    }

我想要达到的结果

数字是单个的怎么拿来用,让他返回一个倒序的数值

  • 写回答

3条回答 默认 最新

  • a5156520 2022-06-09 10:33
    关注

    你是要把数字反转吗,思路是:先分解数字的每一位存入数组,然后倒序访问数组,用数组的元素拼接出反转的数,下面是数字反转的一个实现:

    import java.util.Scanner;
    
    public class Reverse {
    
        public static void main(String[] args) {
            // TODO Auto-generated method stub
            
            Scanner sc = new Scanner(System.in);
            int num = sc.nextInt();
            System.out.println(num+"数字反转后是:"+fanzhuan(num));
            
            
            
        }
        
    
        public static int fanzhuan(int s) {
            int a = 0;
            int revNum=0; //存储反转后的数字
            int []arr = new int[11];  //存储从s中取出的每一个数位
            int i=0;
            
            while(s!=0){  //从s中分解每一位存入到数组arr
                    a=s%10;
                    arr[i]=a;
                    i++;
                    //System.out.print(a);
                    s=s/10; 
                }
            
            int j;
            int weight=1;  //每一数位的值要乘以10的几次方,个位是1
            for(j=i-1;j>=0;j--) {  //访问存储s每一位的数组,把它反转拼接出一个新数字
                revNum += arr[j]*weight;
                weight*=10;
            }
            
            
             return revNum ; 
            
        }
     
    }
    
    
    

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 6月17日
  • 已采纳回答 6月9日
  • 创建了问题 6月9日