Informatiker Board (http://www.informatikerboard.de/board/index.php)
- Themengebiete (http://www.informatikerboard.de/board/board.php?boardid=1)
-- Praktische Informatik (http://www.informatikerboard.de/board/board.php?boardid=6)
--- toString - Methode (http://www.informatikerboard.de/board/thread.php?threadid=2386)


Geschrieben von Tina92 am 13.07.2015 um 15:17:

  toString - Methode

Meine Frage:
Hallo :-)

Ich möchte eine toString - Methode zurückgeben mit einem Integer. Hier einmal der Code:

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:

package konstruktorexception;

public class KonstruktorException 
{
    public static void main(String[] args) throws Exception 
    {
        Tier t = new Tier (5);
        System.out.println(t);
    }
}


class Tier
{
    protected int ausgabe; 
    public Tier (int anzahl) throws Exception
    {
        if (anzahl == 5) throw new Exception ("Ungültige Anzahl"); 
    }
    
    public String toString ()
    {
        return ausgabe; 
    }
}



Meine Ideen:
Muss ich bei der toString - Methode jetzt wirklich return String.valueOf(ausgabe) machen? Das ist doch nicht der Sinn einer toString-Methode?


Vielen Dank



Geschrieben von eulerscheZahl am 13.07.2015 um 16:06:

 

Du musst.
Der Sinn ist, dass du println(t) schreiben kannst. t wird dann implizit in einen String umgewandelt.



Geschrieben von Tina92 am 13.07.2015 um 16:07:

 

Danke für die Antwort, dann kann ich theoretisch auch nur Methoden zurückgeben, welche public String ..... gekennzeichent sind?



Geschrieben von eulerscheZahl am 13.07.2015 um 16:29:

 

Methoden zurückgeben? Ich kann dir nicht folgen.



Geschrieben von Tina92 am 13.07.2015 um 17:20:

 

Zum Beispiel:

public static int zahl (int n)
{
int ergebnis = n*n;
}


public String toString ()
{
return zahl();
}


Das wird ja so nicht funktionieren, daher meine ich, ob anstatt des Integer ein String zahl(int n) stehen müsste?



Geschrieben von eulerscheZahl am 13.07.2015 um 17:22:

 

public String toString ()
Eine Funktion gibt immer ihren Rückgabetyp an. Wenn da String steht, musst du auch einen String zurückgeben, wir sind ja hier nicht bei JavaScript.



Geschrieben von Tina92 am 13.07.2015 um 17:23:

 

Vielen Dank :-)


Forensoftware: Burning Board, entwickelt von WoltLab GmbH