zoukankan      html  css  js  c++  java
  • java数据类型转换

    数据类型有基本数据类型和引用数据类型

    基本数据类型有byte、short、int、long、char、float、double以及布尔类型

    占用内存字节数分别是1、4、8、16、2、4、8,布尔类型不必在意字节长度,因为不参与运算。

    要点一:在程序中写下一个浮点数时,编译器默认使用double类型。

    float a=45.21;

    编译通不过,因为运算时45.21默认是double类型,你当成float类型进行运算,会遗失四个字节。

    解决方法有两种:一.改为45.12F。    二.进行数据类型转换    float a=(float)45.12;

    要点二:在程序中定义一个整数,默认在int空间进行运算,默认使用不超过int类型的长度。

    int number=2147483648;  //会提示数字太大,装不下。

    long number=2147483648;//一样会提示相同错误

    解决办法:long number=2147483648L;

    但是byte number=8;//可以进行编译,因为8可以装在byte字节空间中

    byte number=128;//错误,超过byte容量空间。

    要点三:运算中,如果表达式包括不同类型数值,则运算时以长度最长的类型为主。其他数值类型自动提升类型。

    int a=10;

    double b=a*3.14;

    在这个程序中,3.14是double类型,a自动提升为double类型。

    如果操作数都不大于int,如

    short a=1;

    short b=2;

    short c=a+b;

    上面的程序通不过编译,因为a+b是在int的空间下运行得到的结果,会遗失四个字节

    解决办法:short c=(short)(a+b);

    要点四:不要对浮点数进行相等性运算。

  • 相关阅读:
    CF11C How Many Squares?
    CF3D Least Cost Bracket Sequence
    P4106 [HEOI2014]逻辑翻译
    吉大第二届青云杯复赛第6题
    2017六省联考部分题目整理【期末考试,寿司餐厅,组合数问题,分手是祝愿】
    CF578D LCS Again
    P5072 [Ynoi2015]盼君勿忘
    P3232 [HNOI2013]游走
    P6154 游走
    P4648 [IOI2007] pairs 动物对数
  • 原文地址:https://www.cnblogs.com/zzuli/p/9314468.html
Copyright © 2011-2022 走看看