格式化一行字符串和整数

时间:2016-01-31 23:45:04

标签: java format string-formatting decimalformat

对于我的一个作业,我需要以一定的间隔格式格式化一行字符串和整数。所有字符串和整数都是通过get方法访问的对象的数据字段。

getId返回一个六位整数,getName返回一个带有名字和姓氏的字符串,getAge返回一个整数,getGPA返回一个双精度数,最多3位小数地方。

我的导师告诉我使用DecimalFormat类,我已经尝试了几个但是我无法弄清楚如何因为String,我继续收到错误Cannot format given Object as a Number

我不确定如何将String作为DecimalFormat的一部分合并,因为他给我们的所有例子都是将0放在数字前面或格式化货币格式的数字。如何重写我的DecimalFormat以匹配下面的示例输出?enter image description here

这是打印出行的代码和错误。

System.out.println(format.format(temp.getID() + " " +temp.getName() + " " + temp.getAge() + " " + temp.getGPA()));

enter image description here

1 个答案:

答案 0 :(得分:0)

尝试对每个变量使用format.format(temp.getID())...,你想格式化如下:

  System.out.println(format.format(temp.getID()) + " " +temp.getName() + " " + format.format(temp.getAge()) + " " + format.format(temp.getGPA()));

没有形成所有变量。