java计算要点

如果文章对你有所帮助,请点喜欢并关注,这将是我最大的动力,谢谢

首先要明确各个数据类型的“大小”,如图所示

数据类型.png

不需要背,只要知道各个类型孰大孰小就够了。

数据之间类型的转换是有规则的

要知道java是强类型的,每个变量必须对应一个类型。而每个类型都有一个容量的大小,因此,不同类型之间,有些情况是无法正常转换的

zz.png

但如果满足以下条件,则可以转换,称为自动类型转换
1)目标类型能与源类型兼容的,比如double能兼容int,但char不能兼容int;
2)目标类型的字节数大于源类型的,如long能兼容int,但int就不能反过来兼容long。

强制类型转换

在某些情况下,自动类型转换无法满足需求时,可以使用强制类型转换进行强制转换,但转换结果仍需符合该数据类型,如图

zzz.png
运算符两边的数据类型会影响计算结果
  • 两边如果为同一类型,则结果为同一类型
zzzz.png
  • 两边如果有一个有小数,则结果带有小数


    x.png
计算机里浮点数是没有办法保证完全正确的

如图所示


xx.png

cc.png
为什么会这样?

因为计算机在计算浮点数值时采用二进制计系统表示,而在二进制系统中无法精确表示分数1/10。这就像我们用十进制无法得出10÷3的精确结果一样。
that's all

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,765评论 18 399
  • 《Java从小白到大牛》纸质版已经上架了!!! 在声明变量或常量时会用到数据类型,在前面已经用到一些数据类型,例如...
    tony关东升阅读 840评论 1 3
  • importUIKit classViewController:UITabBarController{ enumD...
    明哥_Young阅读 3,880评论 1 10
  • 1 关键字 1.1 关键字的概述 Java的关键字对java的编译器有特殊的意义,他们用来表示一种数据类型,或...
    哈哈哎呦喂阅读 673评论 0 0
  • 今天上早班,带了工衣过去,可能梅姐这几天要过来,不用给她说,还是穿工衣吧,没想到今天真的来了,她看看新同事,好像不...
    慧蘭阅读 79评论 0 0