java - java中的类型转换

标签 java casting type-conversion

java的类型提升规则中定义了long数据可以转换为float数据类型。怎么可能??

例如:

 class casting{

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


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

}

但是这里的输出是flaot 8字节的长数据如何转换为 float 据(4字节)?

最佳答案

我对你的程序进行了如下修改。 long 是 64 位有符号数据类型,最大值为 9223372036854775807l。当您将其转换为 float 时,它会打印为 9.223372E18。 float 是 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);
    }

}

关于java - java中的类型转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15332297/

相关文章:

Java发送POST数据(POST数据集但为空)

java - 调整大小代码与鼠标移动不对应

c - 使用指向数值数据的 void* 指针的算术运算

php - 使用php将字符串转换为数组

C++11:保证来自模板参数的非转换引用

java - 如何将数字的二进制表示形式的java链表转换为数字的十进制表示形式的字符串?

java - JAX-RS 使用的无状态 EJB 中的 @Context 注入(inject)

java - Java 中的 Fading Indicator 消息

c++ - 如何在不制作拷贝的情况下将 `std::string` 转换为 `std::vector<unsigned char>`?

SQL、CONVERT、CAST 数据类型?