1. Int-Ganzzahl in String konvertieren, Überlauferfassung
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; } }
Die String-Konvertierung ist weniger effizient und verwendet mehr Bibliotheksfunktionen.
(Empfohlenes Lernvideo-Tutorial: Java-Video-Tutorial)
2. Restmethode
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 davon ans * 10, die Java Virtual Machine führt tatsächlich intern eine numerische Typheraufstufung durch, d. = ans. Daher kann die Bedingung, nur 32-Bit-Ganzzahlen zu speichern, nicht erfüllt werden.
Empfohlene verwandte Artikel und Tutorials: Java-Einführungs-Tutorial
Das obige ist der detaillierte Inhalt vonJava implementiert die Ganzzahlumkehr. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!