# LeetCode 7. Reverse Integer (Java)
###### tags: `leetcode` `Java`
## Description
> Given a signed 32-bit integer x, return x with its digits reversed. If reversing x causes the value to go outside the signed 32-bit integer range [-231, 231 - 1], then return 0.
Assume the environment does not allow you to store 64-bit integers (signed or unsigned).
>將整數反轉,遇到超過32-bit的數就回傳0
## Example
```
Input: x = 123
Output: 321
```
```
Input: x = -123
Output: -321
```
```
Input: x = 0
Output: 0
```
## Idea
- 要用到``Integer.MAX_VALUE``及``Integer.MIN_VALUE``去防止32-bit以上的數回傳錯誤
## Code
```java=
class Solution {
public int reverse(int x) {
long result = 0;
while(x != 0){
int temp = x % 10;
x = x / 10;
result = result * 10 + temp;
}
if(result > Integer.MAX_VALUE || result < Integer.MIN_VALUE) return 0;
else
return (int)result;
}
}
```
## Result
Runtime: **1** ms, faster than **100.00%** of Java online submissions for Reverse Integer.
Memory Usage: **35.6** MB, less than **98.93%** of Java online submissions for Reverse Integer.