Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java中的类型转换_Java_Casting_Type Conversion - Fatal编程技术网

java中的类型转换

java中的类型转换,java,casting,type-conversion,Java,Casting,Type Conversion,java的类型提升规则中定义了长数据可以转换为浮点数据类型。这怎么可能 例如: class casting{ void show(float a){ System.out.println("float"); } public static void main(String args[]){ casting obj = new casting(); obj.show(10l); } } 但这里的产出是浮华的 如何将8字节的长数据转换为4字节的浮点数据

java的类型提升规则中定义了长数据可以转换为浮点数据类型。这怎么可能

例如:

 class casting{

    void show(float a){
   System.out.println("float");
   }


 public static void main(String args[]){
   casting obj = new casting();
  obj.show(10l);
  }

}
但这里的产出是浮华的
如何将8字节的长数据转换为4字节的浮点数据?

我对您的程序进行了如下修改。long是64位有符号数据类型,最大值为9223372036854775807l。将其转换为float时,打印为9.223372E18。浮点是32位单精度数据类型。希望这有帮助

public class casting {

    void show(float a) {
        System.out.println("float is " + a);
    }

    public static void main(String args[]) {
        casting obj = new casting();
        obj.show(9223372036854775807l);
    }

}

你的问题是什么。没有?我的问题是如何实现这种转换。在浮点型date4字节长的数据中,8字节是如何存储的?这应该告诉您为什么。您能帮助自己遵循java命名约定吗?在编写类名时使用pascal大小写,在编写方法名时使用camel大小写。请参阅本文,这会让您更清楚。