我想知道手机的可用内存,所以我写了这段代码.
File path2 = Environment.getDataDirectory();
StatFs stat2 = new StatFs(path.getPath());
long blockSize2 = stat.getBlockSize();
long availableBlocks = stat.getAvailableBlocks();
double result = availableBlocks * blockSize;
free = (Preference)this.findPreference("free_mem");
free.setSummary(Double.toString(result)+" GB");
问题是我的支出为5.654707363.我尝试只使用第一个小数位
free = Math.round(size * 10) / 10d;
但是不起作用.有任何想法吗?
解决方法:
如果我正确理解您的问题,则需要在此处使用NumberFormat:
NumberFormat nf = NumberFormat.getInstance();
nf.setMaximumFractionDigits(1);
nf.format(5.654707363);
产生5,7