Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 格式化一行字符串和整数_Java_Format_String Formatting_Decimalformat - Fatal编程技术网

Java 格式化一行字符串和整数

Java 格式化一行字符串和整数,java,format,string-formatting,decimalformat,Java,Format,String Formatting,Decimalformat,对于我的一项作业,我被要求以一定的间隔方式格式化一行字符串和整数。所有字符串和整数都是通过get方法访问的对象的数据字段 getId返回一个六位数的整数,getName返回一个包含名字和姓氏的字符串,getAge返回一个整数,getGPA返回一个双位小数点,最多三位 我的指导老师告诉我使用DecimalFormat类,我尝试了几个,但由于字符串的原因,我一直没有弄清楚如何使用它,我不断收到一个错误,说无法将给定对象格式化为数字 我不知道如何将字符串合并为十进制格式的一部分,因为他给我们的所有示例

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

getId
返回一个六位数的整数,
getName
返回一个包含名字和姓氏的字符串,
getAge
返回一个整数,
getGPA
返回一个双位小数点,最多三位

我的指导老师告诉我使用DecimalFormat类,我尝试了几个,但由于字符串的原因,我一直没有弄清楚如何使用它,我不断收到一个错误,说
无法将给定对象格式化为数字

我不知道如何将字符串合并为十进制格式的一部分,因为他给我们的所有示例都是将0放在数字前面,或者将数字格式化为货币格式。如何重写DecimalFormat以匹配下面的示例输出

下面是打印该行的代码和错误

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

尝试对每个变量使用
format.format(temp.getID())…
是否要按如下方式格式化:

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

没有将所有变量一起格式化。

您可能需要了解更多的想法。
getID
实际返回什么?什么是
格式
?考虑提供一个说明你的问题的方法。这不是一个代码转储,而是您正在做的一个示例,它突出了您所遇到的问题。这将减少混乱和更好的响应使用
printf
相反,这里有一个简洁方便的图图:如果在
temp.getName()
之后有一个format语句,格式不是从每行的不同位置开始,因为每个名称都在不同的位置结束吗?对于
getName()
,是否需要额外的字符串格式?