import java.io.File;
import sun.management.ManagementFactory;
import com.sun.management.OperatingSystemMXBean;
/**
* 获得电脑系统信息
* @author shk
*
*/
public class SysValue{
public static void main(String[] args) {
new SysValue().getSysVaue();
}
public void getSysVaue(){
int kb = 1024;
long totalMemory = Runtime.getRuntime().totalMemory() / kb;//可使用内存
System.out.println("可使用内存:"+totalMemory);
long freeMemory = Runtime.getRuntime().freeMemory() / kb;//剩余内存
System.out.println("剩余内存:"+freeMemory);
long maxMemory = Runtime.getRuntime().maxMemory() / kb;//最大可使用内存
System.out.println("最大可使用内存:"+maxMemory);
OperatingSystemMXBean osmxb = (OperatingSystemMXBean) ManagementFactory.getOperatingSystemMXBean();
long totalMemorySize = osmxb.getTotalPhysicalMemorySize() / kb;//总的物理内存
System.out.println("总的物理内存:"+totalMemorySize);
long freePhysicalMemorySize = osmxb.getFreePhysicalMemorySize() / kb;//剩余的物理内存
System.out.println("剩余的物理内存:"+freePhysicalMemorySize);
long usedMemory = (osmxb.getTotalPhysicalMemorySize() - osmxb.getFreePhysicalMemorySize());//已使用的物理内存
System.out.println("已使用的物理内存:"+usedMemory);
String osName = System.getProperty("os.name");// 操作系统
System.out.println("操作系统:"+osName);
String loginName=System.getProperty("user.name");
System.out.println("当前登录用户的名称:"+loginName);
File[] roots = File.listRoots();//获取磁盘分区列表
for (int i = 0; i < roots.length; i++) {
System.out.println("你的电脑的磁盘分区为:"+roots[i]+" 是否为可操作分区:"+roots[i].canRead());
}
}
}
----------------------------------输出结果如下-------------------------
可使用内存:15872剩余内存:15589最大可使用内存:253440总的物理内存:2097151剩余的物理内存:1883020已使用的物理内存:219271167操作系统:Windows XP当前登录用户的名称:shk你的电脑的磁盘分区为:C: 是否为可操作分区:true你的电脑的磁盘分区为:D: 是否为可操作分区:true你的电脑的磁盘分区为:E: 是否为可操作分区:true你的电脑的磁盘分区为:F: 是否为可操作分区:true你的电脑的磁盘分区为:G: 是否为可操作分区:false