Ich wollte eine Tabelle wie in here gezeigt formatieren. Aber ich habe Probleme, ganze Zahlen auszurichten. Wie in Bild zu sehen ist, sind die ersten vier Zeilen am oberen, ganze Zahlen rechts ausgerichtet. Gibt es eine Möglichkeit, ganze Zahlen über System.out.printf()
oder String.format()
als solche auszurichten? Was ich bisher versucht habe, ähnelt dem; aber es ist nicht dasselbe. Ganzzahlen sind linksbündig.Right Align Ganzzahlen (Java)
String line = String.format("\n\nREGISTERS:\n");
line += String.format("%-21s %+05d\n%-21s %02d\n%-21s %+05d\n%-21s %02d\n%-21s %02d\n\n","accumulator",accum,
"instructionCounter",instructionCounter,"instructionRegister",instructionRegister,"operationCode",operationCode,"operand",operand);
line += (String.format("MEMORY:\n"));
line += (String.format("%5d%5d%5d%5d%5d%5d%5d%5d%5d%5d\n",0,1,2,3,4,5,6,7,8,9));
for(int i = 0; i < memory.length; i += 10){
line += String.format("%2d ", i);
for(int j = i; j < i+9; j++){
line += String.format("%+05d ", memory[j]);
}
line += "\n";
}
Mögliches Duplikat von [Javas System.out.format zum Ausrichten ganzzahliger Werte] (http://stackoverflow.com/questions/8215282/using-java-system-out-format-to-align-integer-values) – shmosel
@shmosel Ich versuchte alle Lösungen in dieser Frage vor dem Posten, keiner von ihnen funktionierte. Ich habe sie wieder getestet, nachdem du gepostet hast. Vor allem die akzeptierte Antwort. – fafinu