关于浮点数据类型和布尔数据类型以及最后的总结

7月28日早0:05分
许久没更新了,最近由于个人原因以及工作原因,本人的充电速度变得慢了很多,后面的规划慢慢的立起来,希望能够有个好的结果,不管怎么说,努力为真,不想得过且过!
纠正我上一期的问题,上一期我说的是sun公司只允许byte类型赋在其范围内的值,经过深入的了解,这个结论并不全面,结论是:当一个整数没有超过byte,short,char的取值范围,这些字面值可以直接复制给byte,short,char类型的变量,因为这是sun公司规定的,方便程序员去编写的,别问我为什么,就像是问1+1=2一样,大家记住就行了。
接着上次的整数型数据类型,我将给大家介绍其他两种数据类型:浮点型以及布尔型数据类型
一、浮点型数据类型
float 单精度 4个字节
double 双精度 8个字节
但是在计算机财务系统中,double数据类型的精度相对来说太低了,不适合做财务软件,需要精度高的“引用数据类型”:BigInterger.
Java是sun公司提供了一套庞大的类库,java程序员是基于这套类库进行开发的,所以得了解其路径。
Java SE类库字节码:rt.java
Java SE类库源码:src.zip
例如:我们的(String[] args)中的String使用的就是String.class字节码文件
注意:和int作为整数型数据类型的默认值,在Java中,浮点型的默认数据类型为Java,如果想要变成float数据类型,那就得在字面值后面加上F/f,或者是强制类型转换符。
小知识点:double和float在计算机内部二进制存储的时候都是存储近似值,但在现实中有一些数字是无限循环的,计算机的容量是有限的,对于无线的数也只能够存储近似值

二、布尔型数据类型
在Java中boolean只有两个值:true、false,在底层存储是boolean存储一个字节,实际中的底层存储时false底层为0,true底层为1
不像c语言中,0和1可以表示假和真
例如:

public class Boolean{
  public static void main(String[] args){
      booleanisRain=true;
      if(isRain){
        System.out.println(“外面下雨了,咱带把伞”);
      }else{
        System.out.println(“外面天气晴朗,我们走”);
      }
      booleansex=trueif(sex)=true;{
       system.out.println(“帅哥你好”);
       }else{
       system.out.println(“美女你好”);
       }
   }
}  

三、类型转换总结
1.八种基本数据类型除boolean之外剩下的7种数据类型时间都可以进行转换
2.小容量向大容量转换称自动类型转换,容量由小到大:
byte<short<int<long<float<double
<char<
(注意:任何浮点型数据类型不管占用多少字节都比整数型容量大,其中char和short可表示的种类数量相同,但char可以取更大的正整数)
3.大容量转成小容量需加强制转换符,但在运行阶段可能损失精度
4.当整数型字面值没有超过byte、short、char的取值范围都可以直接赋值
5.byte、short、char混合运算时先转成int类型
6.多种数据类型混合运算先转成容量最大的类型运算

有个有意思的小问题,在此最后说一下
代码

long g=5byte a=(byte)(int)g/3;
system.out.println(a);

此时编译器可以通过吗,通过这段代码可以看出来,g被强制转换成byte类型了,那么问题来了,这段可以编译成功吗
答案是不能,因为byte类型的g与int类型的3做运算,计算机无法识别,造成了语法错误无法编译,这点需注意。

已经0:47了,不知不觉40分钟过去了,希望自己能够坚持下去!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值