Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/389.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.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_Formatting - Fatal编程技术网

Java 格式化相关错误

Java 格式化相关错误,java,formatting,Java,Formatting,这本来是一行,但我想格式化百分比,当我替换它时,我得到了错误,所以我改为这样做,它显示了我喜欢的方式,但我想知道正确的方法是什么?希望它能帮助我理解为什么我以前所做的一切都不起作用 System.out.print("\nThe "+oracleStock.name+"'s change is "); System.out.printf("%3.2f",oracleStock.getChangePercent()); System.out.print("%"); 感谢您的帮助:在printf中

这本来是一行,但我想格式化百分比,当我替换它时,我得到了错误,所以我改为这样做,它显示了我喜欢的方式,但我想知道正确的方法是什么?希望它能帮助我理解为什么我以前所做的一切都不起作用

System.out.print("\nThe "+oracleStock.name+"'s change is ");
System.out.printf("%3.2f",oracleStock.getChangePercent());
System.out.print("%");
感谢您的帮助:

在printf中,您不能使用%来表示%,因为%意味着下面的内容是字段说明符。如果您真的想在格式中添加一个%,可以使用双百分比,如下所示:

System.out.printf("%nThe %s's change is %3.2f%%", oracleStock.name, oracleStock.getChangePercent());
顺便说一下,您应该使用%n而不是printf中的\n,因为后者将根据平台打印正确的行分隔符