PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Java2 - formatierte Ausgabe von Strings


Byteschlumpf
2006-11-24, 22:46:39
Hallo,

ich habe das Problem, dass ich einen String ausgeben soll, der in etwa so lautet, aber wie hier noch unformatiert ist:

Name: erwin Alter: 23 Fiber: 48,4


Besser wäre die formatierte Ausgabe, die eine max. Anzahl von Zeichen beim Namen zuläßt und den Rest abschneidet und die Ausgabe des letzten Wertes als double darstellt:

Name: erwin Alter: 23 Fiber: 48,4

Über diesen Methodenaufruf soll der String ausgegeben werden:
public void info() {
System.out.println(toString());
}


Ferner wird der String hierduch gebildet:

public String toString() {
char jn;
if (gesund) {
jn = 'n';
}
else {
jn = 'j';
}
return ("Name: "+name+" Alter: "+alt+" mal.: "+jn);


Über dieses frühe Stadium komme ich bisher leider nicht hinaus:

System.out.format("%s\n", anzahl);


Hier ist zwar der Umgang mit formatierter Ausgabe beschrieben, nur komme ich damit nicht so ganz klar: http://www.galileocomputing.de/openbook/javainsel5/javainsel04_006.htm#Rxx747java04006040001591F01222A

Bei C++ war das so schön einfach. :D
Danke schonmal für eure Hilfe! :)

------------------------------------

Ich habe es nochmals überarbeitet. :)

Magnum
2006-11-24, 22:52:42
Kannst du mir nochmal genau sagen, was du eigentlich machen willst?
Irgendwie steh ich auf dem Schlauch und versteh deine Frage nicht!

Ich denke mal einfach, du musst toString() eigentlich nur richtig überschreiben. Den String baust du dir einfach mit "text: " + variable + "anderer text:" + variable + "...." zusammen. (Wie beim return in toString()) Für was du System.out.format brauchst hab ich keinen blassen Schimmer!

Byteschlumpf
2006-11-24, 23:10:56
Update - siehe oben!

Gast
2006-11-24, 23:54:56
also Fieber schreibt man mit ie ;)

ansonsten weiß ich zwar noch immer nicht was du wirklich bezweckst, aber wenn du die einzelnen Strings abschneiden willst wäre es eine möglichkeit die toCharArray() zu verwenden und beim zusammenbauen des ausgabestrings nur die gewünschte anzahl an buchstaben auszulesen.

HellHorse
2006-11-25, 22:35:33
http://java.sun.com/j2se/1.5.0/docs/api/java/io/PrintStream.html#printf(java.lang.String,%20java.lang.Object...)
http://java.sun.com/j2se/1.5.0/docs/api/java/util/Formatter.html#syntax