Java简单方法求Double类型小数点后两位

需求:用户输入一个小数,保留小数点后两位(其后舍弃),如3.1415926–>3.14

整体思路:将输入的数字放大100倍,十位、个位就是小数点后两位,百位千位以上就为源数字直接输出,最后将计算好的数字转换回double方便后续计算。

import java.util.Scanner;
public class Demo {
	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
		System.out.println("请输入一个小数:");
		double num = scanner.nextDouble();
		int numTemp = (int)(num*100);
		int a = numTemp/100;	//求出百位之前
		int b = numTemp/10%10;	//求出十位
		int c = numTemp%10;		//求出个位
		String numString = a + "." + b + c;		//这个已经达到目的
		num = Double.parseDouble(numString);	//转换成double类型,方便以后使用
		System.out.println(num);
	}
}

此方法不是最合适的方法,但可能是最简单易于理解的方法。
在面临去除小数点后n位,此方法可能会有很多麻烦

【新人学习记录】