字符值字面值与数值字面值的区别?

字符值字面值与数值字面值的区别?

float B = 4294967296F;
  System.out.println("B =" +B);
  
  char a = 'a';
  System.out.println("a=" +a);
  
  char b = 65535;
  System.out.println("b="+b);
  
  char c = (char)65537;

字符型char如果超过最大值就要进行强制转化,而float是4字节,32bits,最大值是4294967295,为什么输入4294967296也不报错?

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

你好!float类型是浮点型,最大值不是4294967295,float最大值能达到10的38次方这个量级,所以4294967295根本没有超过浮点数的最大值。祝学习愉快!

  • AmyTTC 提问者 #1
    非常感谢!
    2017-10-03 12:54:45
  • AmyTTC 提问者 #2
    所以无论是 哪种类型,只要超过最大值,都要进行强制转换吗?还有float不是4个字节的吗,10的38次方为什么是它的最大值?
    2017-10-03 12:57:22
  • 一叶知秋519 回复 提问者 AmyTTC #3
    是的;float是浮点型,它的存储结构比较特殊,因此它的最大值要比int类型的大。
    2017-10-04 11:01:20
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师