zoukankan      html  css  js  c++  java
  • Java的变量相关

    变量是在一个范围内的可变的值。

    要点:

    数据类型(确定变量的值的类型)

    一个字节里面8个位,每个位里存储0101这样的二进制的补码表示用来数据,一个字节的数据类型的第一个位是符号位,表示正负。

    数据类型 byte  short  int  long  float  double  char  boolean

    字节数   1    2    4     8   4     8    2      1

    在计算机内存储的是数据的补码形式,第1位是符号位,负数的补码等于它的反码+1,所以范围分别是:

        -2^8~2^7-1 ...................

    关于精度:

    什么精度?

      使用补码的时候,第一个字节的第一个位表示的是符号位,代表正负,这个可能就表示的是精度。所以,当将长的数据类型直接使用短的数据类型接受的话会报错,可能丢失精度,也就是前面的字节被抛弃了。

    变量的运算:

    同一数据类型进行操作,就是针对其补码的操作,当获取的补码位数超过原位数的时候,需要更改接受的数据类型,以报错得到的数据。

    不同的数据类型进行运算,现将小的数据类型转化为大的数据类型,再使用大的数据类型进行操作。一般获取的值都是属于大的数据类型。这就是变量的隐式转换。

    强制类型转换(大转小)

    就是截取大的类型的后面几个字节让字节数等于小的字节数,这样就可以被小的范围接受了。

    强制转换可能出现损失精度的问题。

  • 相关阅读:
    POJ 3687 Labeling Balls <<拓扑排序
    FATFS 初学之 f_mount
    STM8 低功耗时钟管理
    还记得 C中带参宏的 "#"号吗?
    8.9并发编程(一)
    8.8网络编程(三)
    8.7网络编程(二)
    8.6网络编程(一)
    7.30反射、元类及项目生命周期
    7.29多态
  • 原文地址:https://www.cnblogs.com/aigeileshei/p/5515505.html
Copyright © 2011-2022 走看看