在Java中,逗号对println语句有什么影响?

在Java中,逗号对println语句有什么影响?,java,comma,println,Java,Comma,Println,下面是程序的片段 package JavaBasicsPackage; public class AssignmentOperator { public static void main(String[] args) { double number1 = 12.5, number2 = 10.5, result; result = number1 + number2; System.out.printf("number1 + numbe

下面是程序的片段

package JavaBasicsPackage;

public class AssignmentOperator {
    public static void main(String[] args) {
        double number1 = 12.5, number2 = 10.5, result;

        result = number1 + number2;
        System.out.printf("number1 + number2 = " +result);
    }
}
上面打印的是23.0

但下面只打印number1+number2=

在+结果之前只有一个逗号。请解释其影响。

仅当格式字符串中的%s等格式说明符引用了额外的参数时,才使用这些参数。否则,它们将被忽略,就像在没有格式说明符的字符串中一样。如果代码为System.out.printfnumber1+number2=%d,那么您将看到插入字符串中的参数代替了%d格式说明符


表达式+结果使用,将操作数升级为您案例中已存在的数字类型。

第一种形式执行字符串串联,并将结果作为单个参数提供给printf。第二种形式大致相当于:字符串s=number1+number2=;对象r=+结果;System.out.printfs,r;。请参阅,了解s与其余参数的关系。它不是语句,而是方法。%d导致双精度值的格式转换异常。
System.out.printf("number1 + number2 = ", +result);