翻转整数

package algorithm;

//整数翻转
/*
原题
Reverse digits of an integer. 
Example1: x = 123, return 321 
Example2: x = -123, return -321 

题目大意
输入一个整数对其进行翻转 

解题思路
通过求余数求商法进行操作。 
*/

/*
x=123 -> 321 
此为3*10*10+2*10+1

 * */
public class ReverseInteger {
    
    public static int solution(int originInt){
        
        long tmp=originInt;
        long result=0;
        
        while(tmp!=0){
            result=result*10+tmp%10;
            System.out.println(“result=”+result+”  tmp=”+tmp);
            
            tmp=tmp/10;
            
            
        }
        
        if(result<Integer.MIN_VALUE||result>Integer.MAX_VALUE){
            return 0;
        }
        
        return (int) result;
    }

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int tmp1=123;
        int result1=solution(tmp1);
        
        System.out.println(tmp1+”,翻转后结果为”+result1);
        
        tmp1=-123;
        result1=solution(tmp1);
        
        System.out.println(tmp1+”,翻转后结果为”+result1);
        
        
    }

}
 

点赞