You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修正toString方法中的员工列表空格格式问题?

解决方法

问题出在格式字符串的两处设置上:

  1. firstName的宽度设为9,而目标格式中该列实际宽度为8(最长的Srilatha刚好8个字符,无多余空格);
  2. lastName格式说明符后多了一个空格,导致姓氏和薪资之间多出一个空格,同时薪资未设置固定宽度,短数值无法和长数值对齐。

调整后的toString方法如下:

public String toString() {
    String statement = String.format("%-8s %-10s%7.2f%n", this.firstName, this.lastName, this.monthlySalary);
    return statement;
}

格式说明:

  • %-8s:将firstName左对齐,占满8个字符宽度,短姓名会自动补空格,和目标格式的姓名列完全匹配;
  • %-10s:将lastName左对齐,占满10个字符宽度,不同长度的姓氏补空格后总长度一致,保证薪资起始位置统一;
  • %7.2f:将薪资右对齐,占满7个字符宽度,长数值(如6345.00)刚好占满,短数值(如525.00)会自动在前面补一个空格,实现小数点对齐。

调整后输出就会完全匹配作业要求的格式。

内容的提问来源于stack exchange,提问作者Tiffani Singleton

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 08:41:02