1. Convert int integer to String and overflow capture
class Solution { public int reverse(int x) { long nums = 0; int temp = 1; try { temp = x / Math.abs(x); StringBuilder num = new StringBuilder(); num.append(Math.abs(x)); nums = Long.parseLong(num.reverse().toString()); if(nums > Math.pow(2, 31) - 1) { return 0; } } catch (Exception e) { // TODO: handle exception return 0; } return (int)nums*temp; } }
String conversion is less efficient and uses more library functions.
(recommended learning video tutorial: java video tutorial)
2. Remainder method
class Solution { public int reverse(int x) { int ans = 0; while(x != 0) { // 判断溢出 if((ans * 10) / 10 != ans) { ans = 0; break; } // ans*10 没有溢出 ans = ans * 10 + x % 10; x /= 10; } return ans; } }
(ans * 10) / 10 of which ans *10, the Java virtual machine actually performs numerical type promotion internally, that is, when overflowing, long type data is temporarily stored, and finally through narrowing conversion, the lower 32-digit value is retained to obtain (ans * 10) / 10 != ans. Therefore, the condition of storing only 32-bit integers cannot be met.
Recommended related articles and tutorials: java introductory tutorial
The above is the detailed content of Java implements integer reversal. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SublimeText3 Chinese version
Chinese version, very easy to use

WebStorm Mac version
Useful JavaScript development tools

Zend Studio 13.0.1
Powerful PHP integrated development environment

SublimeText3 Linux new version
SublimeText3 Linux latest version

Dreamweaver CS6
Visual web development tools
