如何使用 String.format() 左对齐字符串?

2022-08-31 16:22:14

我在Java中使用String.format()试图模拟C中可用的printf()控制通道。我了解如何指定字符串应放置在需要20个字符,5,2 ...3位小数,2位等。但是,字符串在其字段中以右对齐方式打印。

如何左对齐字符串?

下面是一个可能的输出示例,我想将其修改为左对齐和在其字段中。EXECUTINGCREATED

Process PID: 25    Status: -----------       EXECUTING
Process PID: 36    Status: READY-SUSPENDED
Process PID:  4    Status: ----------------        CREATED

*注意:将“-”视为空白区域


答案 1

与 printf 相同的方式 - 在格式中使用修饰符-


答案 2
System.out.format("%-10d%-32s%-16s%-16s%-32s", obj.getId(), obj.getBname(), obj.getAname(),obj.getLanguage(),obj.getPublication());

只需在数字前面添加连字符即可。-