数据类型的分类

在Java语言中数据类型主要分为两大类:

  (1)基本数据类型(记住)

    byte、short、int、long、float、double、boolean、char

  (2)引用数据类型(了解)

    数组、类、接口、枚举、标注

一、Java语言中描述整数数据的类型有:byte、short、int、long,推荐int类型

  其中byte类型在内存空间中占用1个字节,表示范围是:-2^7 ~2^7-1;

  其中short类型在内存空间中占2个字节,表示范围是:-2^15 ~2^15-1;

  其中int类型在内存空间中占4个字节,表示范围是:-2^31 ~2^31-1;

  其中long类型在内存空间中占8个字节,表示范围是: -2^63 ~2^63-1;

默认为int类型,所以超过数据类型自身就已经出错了; 

byte a = 127;

数据类型的分类

short b = 250250;

数据类型的分类

int c = 45432132123132131313;

数据类型的分类

在数据末尾加上L更改默认类型:在Java程序中直接写出的整数数据叫做直接量/字面量/常量,默认为int类型。若希望表达更大的直接量,则在直接量后面加上l或者L,推荐L.

int d = 250250250250L;

数据类型的分类

若描述比long类型还大的数据则使用java.math.BigInteger类型

问题1:为什么变量赋值会报错?

  int a = 25;
  byte d = a;

数据类型的分类

二、Java描述浮点的数据类型有:float和double,推荐double类型

  其中float类型在内存空间占4个字节,叫做单精度浮点数,可以表示7位有效数字,范围:-3.403E38~3.403E38(E38表示10^38)。

  其中double类型在内存空间占8个字节,叫做双精度浮点数,可以表示15位有效数字,范围:-1.798E308~1.798E308。

  Java程序中直接写出的小数数据叫做直接量,默认为double类型,若希望表达float类型的直接量,则需要在直接量的后面加上f或者F。

  float类型可以表示7位有效数据,这些小数数据叫做浮点直接量

  float如果超过7位有效数据,也会返回整数类型类似的错误

float f1 = 3.1415926;

数据类型的分类

  避免这类错误的方法就是在数据末尾标注该数据是什么类型?比如:

float f1 = 3.1415926f;

数据类型的分类

  因为float最多可以表示7位浮点数,所以第8位浮点数不准确,这时候就应该使用更大的双精度浮点数double类型

double f1 = 3.1415926;

数据类型的分类

  因为float类型和double类型存在误差,所以商业开发(涉及金钱的时候)的时候不使用float类型和double类型,若希望实现精确运算则借助java.math.BigDecimal类型

  以下例子可以看出float、double存在误差:

float f1 = 3.1415926f;
double f2 = 3.1415926;
System.out.println(f1+f2);

数据类型的分类

三、Java描述布尔的数据类型有:boolean

  Java语言中用于描述真假信息类型有:boolean,数值只有:true 和 false。

  布尔类型在内存空间中所占大小没有明确的规定,可以认为是1个字节。

  声明布尔类型:

boolean b1 = true;
boolean b2 = false;

  整数直接量不能转换成boolean类型:

boolean b2 = false;
b2 = 2;

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzsswx.html