Java 循环中记录的字符串会污染内存吗?

Java 循环中记录的字符串会污染内存吗?,java,memory,Java,Memory,考虑代码: while(true) { System.out.println("Current time: " + System.nanoTime()); } 这段代码会用字符串污染内存吗?我的应用程序应该在控制台中打印这样的登录循环5-10个小时。内存将被垃圾收集,因此不应该引起关注 如果要将控制台输出重定向到文件中,可能需要考虑文件将增长多大以及是否有足够的磁盘空间容纳它。内存将被垃圾收集,因此不应引起关注 如果要将控制台输出重定向到文件中,可能需要考虑文件将增长多大,以及是否有足够的

考虑代码:

while(true) {
  System.out.println("Current time: " + System.nanoTime());
}

这段代码会用字符串污染内存吗?我的应用程序应该在控制台中打印这样的登录循环5-10个小时。

内存将被垃圾收集,因此不应该引起关注


如果要将控制台输出重定向到文件中,可能需要考虑文件将增长多大以及是否有足够的磁盘空间容纳它。

内存将被垃圾收集,因此不应引起关注


如果要将控制台输出重定向到文件中,可能需要考虑文件将增长多大,以及是否有足够的磁盘空间容纳它。

要添加更多详细信息,循环的每次迭代都将创建一个新字符串,但在println返回后,它将可以立即收集。如果您同时在另一个线程上执行操作,可能会导致一些碎片,但这并不是一个真正的问题。要添加更多详细信息,循环的每次迭代都将创建一个新字符串,但它将在println返回后立即符合收集条件。如果您同时在另一个线程上执行操作,可能会导致一些碎片,但这并不是一个真正的问题。