Beispiele für Reverser Zahlen in einem Java-Programm

August 3

Java ist eine leistungsfähige Programmiersprache mit einer Fülle von nützliche Klassen und Methoden, die lästigen Aufgaben und komplexe Datenstrukturen zu vereinfachen. Die Übungen der Umkehr stellen in eine ganze Zahl zeigt einige der Javas Grundoperationen und nützliche Funktionen. Eine mögliche Anwendung dieses Verfahrens ist Palindrome überprüft.

Modulo

Der modulo-Operator hinterlässt viele neue Programmierer, die den Kopf kratzen, weil viele Menschen haben nicht das Konzept der "Rest" seit der Grundschule gedacht, und Programmiersprachen nennen sie das lustige "modulo." Der modulo-Operation, die den Rest der Division zweier ganzer Zahlen zurückgibt, wird von einer oder mehreren Ziffern am Ende einer ganzen Zahl einfach mithilfe der Befugnisse der zehn für den Divisor hacken. Zum Beispiel:

187 % 10 kehrt 7364 % 100 kehrt 64

Durchlaufen Sie einfach jede Ziffer mit Pop-jede Ziffer am Ende der Zahl, Division und Multiplikation, die Ziffern zu verlagern, um die Ziffern in einer Ganzzahl umzukehren. Zum Beispiel:

Int OrigNum = 123456789GEHENInt NewNum = 0GEHENwährend (OrigNum > 0) {}NewNum * = 10GEHENNewNum += OrigNum % 10GEHENOrigNum / 10 =GEHEN}

Wenn die Schleife abgeschlossen ist, wird NewNum den Wert 987654321 halten.

Zeichenfolge

Die Zeichenfolge und StringBuffer-Klassen bieten praktische Funktionen zum Konvertieren von Typen und Bearbeiten von Zeichenfolgen. Mithilfe StringBuffers reverse-Methode macht Umkehr die Ziffern in eine Ganzzahl-schnelle und einfache Arbeit. Zum Beispiel:

Int OrigNum = 123456789GEHENInt NewNum = 0GEHENString str = String.valueOf(origNum)GEHENStringBuffer Buf = neue StringBuffer(str)GEHENStr = buf.reverse().toString()GEHENNewNum = Integer.parseInt(str);

Array

Arrays sind relativ einfache Datenstrukturen, mit denen Sie zum Erstellen einer Liste von Werten und Navigieren durch sie. Verwenden Sie die log10-Methode der Math-Klasse zählen die Ziffern, erstellen Sie ein Array von Ganzzahlen verwenden, und halten eine Ziffer an jedem Index und andere grundlegenden Operatoren zu dekonstruieren und rekonstruieren die Anzahl.

Int OrigNum = 123456789GEHENInt NewNum = 0GEHENInt Anzahl = (OrigNum == 0)? 1: (int)Math.log10(origNum) + 1GEHENInt [] Ziffern = new Int [Count]GEHENInt ichGEHENfür (ich = 0; i < Anzahl; i++) {}Ziffern [i] = OrigNum % 10GEHENOrigNum / 10 =GEHEN}für (ich = 0; i < Anzahl; i++) {}NewNum * = 10GEHENNewNum += Ziffern [i]GEHEN}

Vektor

Die Vector-Klasse ist eine komplexe Datenstruktur, die enthält einer Liste von Elementen, wächst und schrumpft dynamisch und stellt Methoden für den Zugriff auf die Liste in ähnlich wie bei Arrays. Im Gegensatz zu Arrays Vektoren eine Vielzahl von verschiedenartigen Objekten aufnehmen können, aber in diesem Beispiel halten es einfach jede Ziffer der Ganzzahl mit Vorzeichen. Da Vektoren dynamisch wachsen und Enumerationen automatisch die Liste mit den Methoden nextElement() und hasMoreElements() durchlaufen, gibt es keine Notwendigkeit, die Ziffern zu zählen.

Int OrigNum = 123456789GEHENInt NewNum = 0GEHENVektor-Ziffern = new Vector)GEHEN

während (OrigNum > 0) {}digits.Add (OrigNum % 10)GEHENOrigNum / 10 =GEHEN}

für (Enumeration d = digits.elements(); d.hasMoreElements();) {NewNum * = 10GEHENNewNum += Integer.parseInt(d.nextElement().toString())GEHEN}

Zusammenfassung

Es gibt viele andere Javaklassen ähnlich dem Vektor, die mit der Nummer Umkehr-Übung, wie List, Iterator, Warteschlange, ArrayList und LinkedList untersucht werden konnte. Das Anzahl Umkehr-Verfahren kann in mehreren Programmen leicht als eine Funktion geschrieben, so dass es immer wieder in interaktiven Programmen aufgerufen werden kann und wiederverwertet werden. Implementierung von Klassen um die verschiedenen Methoden zu demonstrieren, ist eine hervorragende Möglichkeit, Praxis Java objektorientierte Programmierung Techniken, wie Schnittstellen und Vererbung.