A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© wht 初级黑马   /  2012-6-30 11:25  /  1955 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

我希望要具体实现方法,我知道java有一个方法可以直接转,我想自己编辑这个方法

点评

希望保持求知精神  发表于 2012-6-30 16:58

评分

参与人数 1技术分 +2 收起 理由
刘蕴学 + 2

查看全部评分

4 个回复

倒序浏览
本帖最后由 邵阳 于 2012-6-30 11:47 编辑

class Test
{
        public static void main(String[] args)
        {
                ShuRu("12");
        }
        public static void ShuRu(String x)
        {
                String a=x;
                double y;
                y=Double.parseDouble(a);
                System.out.println(y);
        }
}

从百度上看到   y=Double.parseDouble(a);,然后自己重新电议了一个函数,直接输入



回复 使用道具 举报
邵阳 发表于 2012-6-30 11:46
class Test
{
        public static void main(String[] args)

其实我想知道这个y=Double.parseDouble(a)方法的具体实现

点评

推荐你搜索一下,java浮点数储存原理  发表于 2012-6-30 13:58
回复 使用道具 举报
Double.parseDouble其实是调用了Double类中的parseDouble方法,Double类是lang的直接子类。进入jdk下的src压缩文件中,可以看到java文件夹,进入该文件夹后,找到lang里面的double文件,就可以看到Double.parseDouble方法的代码:
public static double parseDouble(String s) throws NumberFormatException {
        return FloatingDecimal.readJavaFormatString(s).doubleValue();
    }
可以看到parseDouble方法返回的是调用了FloatingDecimal.readJavaFormatString(s).doubleValue()方法的结果,但是FloatingDecimal.readJavaFormatString(s).doubleValue()方法被封装了,具体的实现代码看不到。
回复 使用道具 举报
你所说的Double.parseDouble(); 就如 Double.valueOf(string s); 其中参数 必须是 like : string s ="12333";  为数字形式, 如果为字符串
则必须转换成ascall 码。让后进行转换。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马