toString Java: So verwendest du die Java toString()-Methode

    Avatarbild von Preet Sanghavi
    Preet Sanghavi

    veröffentlicht am: 20.06.2022
    zuletzt aktualisiert am: 06.02.2023

    toString Java: So verwenden wir die Java toString() Methode, um die Konsolenausgabe von Objekten zu optimieren!

    In Java ist jede Klasse direkt oder indirekt eine Unterklasse der Klasse Object. Die Klasse Object bietet eine Funktion toString(), die eine String- beziehungsweiseTextdarstellung eines Objekts zurückgibt. Wenn wir ein Objekt drucken, wird die toString() Java-Funktion intern vom Compiler aufgerufen. Wenn wir ein Objekt ausgeben, erhalten wir aber den Speicherort des Objekts und nicht den Inhalt (wie beispielsweise die einzelnen Attribute); die Überschreibung mit der Methode toString() kann jedoch die gewünschte Ausgabe liefern.

    In diesem Beitrag wird ein tiefgreifendes Verständnis der unten aufgeführten Konzepte in Bezug auf die Methode toString() vermittelt:

    • Was ist die toString Java-Methode?
    • Warum wird die Methode toString() in Java verwendet?
    • Wie funktioniert die Java toString() Methode?

    So, lass uns loslegen!

    Was ist die toString Java-Methode?

    Es handelt sich um eine vordefinierte Methode der Klasse Object, die dazu dient, eine String-/Textdarstellung des Objekts zurückzugeben. Die Java toString() Methode kann einen beliebigen Java Datentypen wie int, Java Boolean, Java Double usw. annehmen und den gegebenen Wert im String Format zurückgeben.

    Warum verwenden wir toString Java-Methode?

    Betrachten wir den unten stehenden Codeblock, der zeigt, was passiert, wenn wir die Methode toString nicht verwenden:

    class Mitarbeiter {
    
        int mitarbeiterNummer;
        String mitarbeiterName;
        int mitarbeiterAlter;
    
        Mitarbeiter(int mitarbeiterNummer, String mitarbeiterName, int mitarbeiterAlter) {
            this.mitarbeiterNummer = mitarbeiterNummer;
            this.mitarbeiterName = mitarbeiterName;
            this.mitarbeiterAlter = mitarbeiterAlter;
        }
    }
    public class Main {
        public static void main(String[] args) {
            Mitarbeiter mitarbeiterMichael = new Mitarbeiter(13, "Mitarbeiter", 27);
            Mitarbeiter mitarbeiterSimone = new Mitarbeiter(02, "Simone", 25);
            System.out.println(mitarbeiterMichael);
            System.out.println(mitarbeiterSimone);
        }
    
    }

    In diesem Beispiel haben wir zwei Klassen: eine Mitarbeiter und eine Main Klasse.

    • Wir haben einen parametrisierten Konstruktor für die Mitarbeiter-Klasse erstellt.
    • Wir haben zwei Objekte der Mitarbeiter-Klasse erstellt und ihnen bzw. dem Java Konstruktor einige Werte übergeben.
    • Zuletzt haben wir uns die beiden Objekte (mitarbeiterMichael & mitarbeiterSimone) mit der Anweisung System.out.println() auf der Konsole ausgeben lassen

    Daraufhin erhalten wir die folgende Ausgabe:

    Die Java toString()-Methode wird verwendet um die Ausgabe von Objekten nach belieben anzupassen!

    Statt des gewünschten Ergebnisses haben wir eine ungewöhnliche Ausgabe erhalten. Hier,

    • steht Mitarbeiter für den Klassennamen des Objekts / der Objekte
    • während „41629346“ und „404b9385“ die Hashcodes von mitarbeiterMichael bzw. mitarbeiterSimone sind. Die Hashcodes beziehen sich dabei auf den Speicherort der beiden Objekte. Jeder Speicherort ist dabei einzigartig und kann nicht doppelt vorkommen!

    Wie funktioniert die toString Java-Methode?

    Betrachten wir den folgenden Codeschnipsel, der uns helfen wird zu verstehen, was der Zweck der Methode toString() in Java ist:

    class Mitarbeiter {
    
        int mitarbeiterNummer;
        String mitarbeiterName;
        int mitarbeiterAlter;
    
        Mitarbeiter(int mitarbeiterNummer, String mitarbeiterName, int mitarbeiterAlter) {
            this.mitarbeiterNummer = mitarbeiterNummer;
            this.mitarbeiterName = mitarbeiterName;
            this.mitarbeiterAlter = mitarbeiterAlter;
        }
    
        public String toString() {
            return mitarbeiterNummer + " " + mitarbeiterName + " " + mitarbeiterAlter;
        }
    }
    public class Main {
        public static void main(String[] args) {
            Mitarbeiter mitarbeiterMichael = new Mitarbeiter(13, "Mitarbeiter", 27);
            Mitarbeiter mitarbeiterSimone = new Mitarbeiter(02, "Simone", 25);
            System.out.println(mitarbeiterMichael);
            System.out.println(mitarbeiterSimone);
        }
    
    }

    Diesmal überschreiben wir mit die toString Java Methode und als Ergebnis erhalten wir die folgende Ausgabe:

    Wie du siehst, können wir ganz einfach die Methode überschreiben!

    Der obige Ausschnitt zeigt, dass die Überschreibung mit der Methode toString die gewünschte Ausgabe erzeugt.

    Zusammenfassung: Die Java toString()-Method

    Die toString Java Methode wird verwendet, um ein Objekt im String-Format darzustellen. Die Methode toString() kann einen beliebigen Wert wie int, boolean, double usw. annehmen und den angegebenen Wert im String Format zurückgeben. In Java wird beim Ausgeben eines Objekts der Speicherort des Objekts zurückgegeben; durch Überschreiben mit der Methode toString() wird jedoch die gewünschte Ausgabe erzeugt. In diesem Beitrag wird anhand geeigneter Beispiele erklärt, wie die Methode toString() in Java verwendet werden kann. Falls du mehr über Java lernen möchtest, schau dir unser großes Java Tutorial an!

    😩 Gelangweilt von den Udemy & YouTube-Tutorials?!

    Lerne spielerisch Java und komme deiner gutbezahlten (und an der 🌴 liegenden) Traumkarriere einen Schritt weiter.

    TP Star TP Star TP Star TP Star TP Star

    "Für Leute die gerne Python oder Java lernen wollen ist Codegree klasse. Ist nicht wie bei anderen Konkurrenten auf Videokursen aufgebaut..."

    - Lennart Sparbier

    100% kostenlos registrieren · keine Kreditkarte notwendig

    👋 Wir warten bereits auf dich!

    Lerne das, was du wirklich brauchst.

    Im Gegensatz zu der Abendschule oder der alteingesessenen Uni lernst du bei codegree die Sprachen & Pakete, die wirklich im Jobmarkt gesucht werden.

    Logo von Python
    Logo von PyTorch
    Logo von Pandas
    Logo von Matplotlib
    Logo von Java
    Logo von NumPy
    Mehr erfahren

    100% kostenlos registrieren · keine Zahlungsdaten notwendig