日期:2014-05-20  浏览次数:20775 次

新手求助..一个简单的java问题(关于数据类型的)
要求:把任意一个小数(double)的整数部分存入long变量,小数部分存入short变量
求指点;




------解决方案--------------------
你需要先确认下小数准备保留小数点后几位。
double num = 12345.678;
long partInt = (long)num; // 强转直接得到整数部分
short partPoint = (short)((num - partInt) * 100); // 如果只保留2位
------解决方案--------------------
Java code

public class Test {
    public static void main(String[] args) {
        double d = 1234.123;
        long l = Long.parseLong(String.valueOf(d).split("\\.")[0]);
        short s = Short.parseShort(String.valueOf(d).split("\\.")[1]);
        System.out.println(d);
        System.out.println(l);
        System.out.println(s);
    }
}