我正在尝试使用printf来显示这样的内容:
Temperature: # # # # # # # # # # # #
但是当我运行我的程序时,我得到了这个:
Temperature:Temperature:Temperature:Temperature:Temperature:Temperature:Temperature:Temperature:Temperature:Temperature:Temperature:Temperature:
69.0 67.0 66.0 64.0 66.0 69.0 67.0 67.0 70.0 69.0 69.0 70.0
以下是我的代码片段:
System.out.printf("Temperature:", "%10.1f", temperature);
非常感谢任何帮助。
答案 0 :(得分:1)
应该是
System.out.printf("Temperature %10.1f\n", temperature)
答案 1 :(得分:0)
不确定您是否使用循环。
如果您正在使用for循环,请在循环外写入System.out.print("Temperature:");
然后在循环内你可以写System.out.print(temperature+"\t");
答案 2 :(得分:0)
根据您的需要,有很多方法可以做到这一点。
如果您使用Collection来存储温度,您可以遍历它们并打印每个temp,并在它们之间留出空格或制表符。
System.out.print("Temperature: ");
for(int temp: temps)
{
System.out.print(temp + " ");
}
如果您不太关心输出格式,可以执行以下操作:
System.out.printf("Temperature: %s", Arrays.toString(temperature.toArray()));
那会给你这个:
Temperature: [10.0, 15.0, 20.0]
最后一个答案当然只适用于你的对象有toString()实现的情况。
答案 3 :(得分:0)
为什么不这样做:
String temp = "";
for (strintg s : Temperature){
temp+= s + " "; }
System.out.printf("Temperature: " + temp);
将温度数组中的所有信息提前传递到字符串中,然后将其作为一个字符串打印出来。