繁体   English   中英

Java - 将字节转换为兆字节

[英]Java - Converting bytes to megabytes

我在这里有以下代码:

long memoryUsedOnStartup = Runtime.getRuntime().totalMemory() -
Runtime.getRuntime().freeMemory();

我在我的程序中将它用于一些统计信息,但这会以千字节为单位返回。 有没有可靠的方法将其转换为兆字节?

编辑:它以字节为单位返回它,但我仍然需要它以兆字节为单位......

1 千字节 (KB) -> 2^10 = 1,024 字节

1 兆字节 (MB) -> 2^20 = 1,048,576 字节 = 1,024 千字节 (KB)

public long freeMemory()

返回:当前可用于未来分配的对象的内存总量的近似值,以字节为单位。

公共长总内存()

返回: 当前可用于当前和未来对象的内存总量,以字节为单位。

因此,当您计算memoryUsedOnStartup时,它以字节为单位。 如果你想得到以兆字节为单位的结果,那么你需要将它除以(1024 * 1024)

下面将字节转换为 MB 是公式。

bytes/1e+6 = Mb
private static final long  MB = 1024L * 1024L;

 public static long KBToMB(long KB) 
 {
    return KB / MB;
 }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM