我从一个map里提取一个数据,但是我想对提取出来的数据进行运算处理,(float)map.get("id"),像这样强制转化,报错不能从object转化为float,我想问问7应该怎么做

解决方案 »

  1.   

    先转别的类型,然后用Float的包装类转换
      

  2.   


    Object bObject = 1F;
        
         Float f = (Float)bObject;
        
         System.out.println(f);你的ID如果是7,会报转化异常的 
      

  3.   

    Float a=(Float)new Object();
    Float b=Float.parseFloat(new Object().toString());
      

  4.   

    map.get("id").getClass().getName()输出一下看看是什么类型再转
      

  5.   

    map.get("id") 能说下 你这返回的是个啥类型不? 
    如果是个字符串类型 可以按下面专
    如果是基本类型 可以强转
    如果是自定义对象 请取到对象中集体的值 再
    个人认为 要想转为float类型 你要转的 那个对象 需要是基本类型 或数字格式的字符串类型
    public Main()
        {
            Map map = new HashMap();        map.put("1", "1");
            String a = (String) map.get("1");
    //这样
            float b = new Float(a);
    //或者这样
            float c = Float.parseFloat(a);
            System.err.println(b + " " + c);
        }
      

  6.   

    float a=Float.parseFloat(b.toString());//b为object类型