在String.format()中Java的%ld的C ++等价

例如,C ++中的%11.2f变成Java中的%11.2f 。 长格式怎么样?

正如你可能已经制定的,没有必要指定l标志。 根据文档 ,十进制整数由d指定,就像在C ++中一样。 所以答案只是%d

使用%d作为小数(long,int)。 它工作正常。 例如:

 System.err.println(String.format("%d", 193874120937489387L)); 

…会打印得很好。 请阅读java.util.Formatter了解更多细节。 %d会花费很long ,没有问题。