1. 程式人生 > 實用技巧 >7. 整數反轉

7. 整數反轉

給出一個 32 位的有符號整數,你需要將這個整數中每位上的數字進行反轉。

示例 1:

輸入: 123
輸出: 321

示例 2:

輸入: -123
輸出: -321

示例 3:

輸入: 120
輸出: 21

注意:

假設我們的環境只能儲存得下 32 位的有符號整數,則其數值範圍為 [−231, 231 − 1]。請根據這個假設,如果反轉後整數溢位那麼就返回 0。

來源:力扣(LeetCode)
連結:https://leetcode-cn.com/problems/reverse-integer
著作權歸領釦網路所有。商業轉載請聯絡官方授權,非商業轉載請註明出處。

 1 public int reverse(int
x) { 2 boolean sign = false; 3 long y = (long)x; 4 if(y>=0) { 5 sign = true; 6 } else { 7 y = -y; 8 } 9 StringBuffer s = new StringBuffer(String.valueOf(y)); 10 String ss = s.reverse().toString(); 11 y = Long.parseLong(ss);
12 13 if(sign){ 14 if(y>Integer.MAX_VALUE) 15 return 0; 16 else 17 return (int)y; 18 }else { 19 y*=-1; 20 if(y<Integer.MIN_VALUE) 21 return 0; 22 else 23 return
(int)y; 24 } 25 }

取符號,轉字元,翻轉,轉int