Java printf 性能

标签 java

Java 是否使用参数调用 (g)libc 函数 printf 还是 Java 自行替换(我认为这很慢)?

因此,当我执行 System.out.printf( ... ); 时,Java 会解释 %s%d 和调用 .replace("%d", Something) 还是只调用 native printf() c 函数,将其传递给 C/C++ native 代码?

最佳答案

printf的所有代码是用 Java 完成的。

大部分的魔法都发生在 java.util.Formatter 中。类。

System.out.printf(String format, Object ... args)

最终会调用:

formatter.format(Locale.getDefault(), format, args);

参见Formatter#format也是如此。

关于Java printf 性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37973359/

相关文章:

java - 不确定为什么我在这个循环中遇到 Null 异常

java - Keytool 应用程序在哪里?

java - For 循环检查字符串是否包含符号?

java - Blackberry - 如何使用输入/输出流将文件复制到 SD 卡?

Java 类型删除和重载?

java - 如何使用 systemd-run 运行子进程并等待其完成

java - JRE 系统库 - 不支持的主要.次要版本 52.0

java - Hibernate 不会从集合中删除的对象中删除条目

java - Nodejs 和 Java 之间的连接。当 java 客户端连接到 nodejs 服务器时,它显示错误,

java - 使用评估顺序来检查空值是不好的做法吗?