编程那点事编程那点事

专注编程入门及提高
探究程序员职业规划之道!

Java变量的数据类型

Java是一门强类型的编程语言,它对变量的数据类型有严格的限定。在定义变量时必须声明变量的类型,在为变量赋值时必须赋予和变量同一种类型的值,否则程序会报错。

在Java中变量的数据类型分为两种,即基本数据类型和引用数据类型。Java中所有的数据类型如图所示。

java数据类型

其中,8种基本数据类型是Java语言内嵌的,在任何操作系统中都具有相同大小和属性,而引用数据类型是在Java程序中由编程人员自己定义的变量类型。本章此处重点介绍的是Java中的基本数据类型,引用数据类型会在以后的章节中做详细的讲解。

  • 整数类型变量

整数类型变量用来存储整数数值,即没有小数部分的值。在Java中,为了给不同大小范围内的整数合理地分配存储空间,整数类型分为4种不同的类型:字节型(byte)、短整型(short)、整型(int)和长整型(long),4种类型所占存储空间的大小以及取值范围。

java byte和short类型

表列出了4种整数类型变量所占的空间大小和取值范围。其中,占用空间指的是不同类型的变量分别占用的内存大小,如一个int类型的变量会占用4个字节大小的内存空间。取值范围是变量存储的值不能超出的范围,如一个byte类型的变量存储的值必须是-27~27-1之间的整数。

在为一个long类型的变量赋值时需要注意一点,所赋值的后面要加上一个字母L(或小写l),说明赋值为long类型。如果赋的值未超出int型的取值范围,则可以省略字母L(或小写l)。具体示例如下:

long num = 2200000000L; //所赋的值超出了int 型的取值范围,后面必须加上字母L
long num = 198L; //所赋的值未超出int 型的取值范围,后面可以加上字母L
long num = 198; //所赋的值未超出int 型的取值范围,后面可以省略字母L
  • 浮点数类型变量

浮点数类型变量用来存储小数数值。在Java中,浮点数类型分为两种:单精度浮点数(float)和双精度浮点数(double)。double型所表示的浮点数比float型更精确,两种浮点数所占存储空间的大小以及取值范围。

java float和double类型

表列出了两种浮点数类型变量所占的空间大小和取值范围,在取值范围中,E表示以10为底的指数,E后面的+号和-号代表正指数和负指数,例如1.4E-45表示1.4*10-45。

在Java中,一个小数会被默认为double类型的值,因此在为一个float类型的变量赋值时需要注意一点,所赋值的后面一定要加上字母F(或者小写f),而为double类型的变量赋值时,可以在所赋值的后面加上字符D(或小写d),也可以不加。具体示例如下:

float f = 123.4f; //为一个float 类型的变量赋值,后面必须加上字母f
double d1 = 100.1; //为一个double 类型的变量赋值,后面可以省略字母d
double d2 = 199.3d; //为一个double 类型的变量赋值,后面可以加上字母d

在程序中也可以为一个浮点数类型变量赋予一个整数数值,例如下面的写法也是可以的。


float f=100; //声明一个float 类型的变量并赋整数值
double d=100; //声明一个double 类型的变量并赋整数值
  • 字符类型变量

字符类型变量用于存储一个单一字符,在Java中用char表示。Java中每个char类型的字符变量都会占用2个字节。在给char类型的变量赋值时,需要用一对英文半角格式的单引号’ ‘把字符括起来,如a’ ‘,也可以将char类型的变量赋值为0~65535范围内的整数,计算机会自动将这些整数转化为所对应的字符,如数值97对应的字符为’a’。下面的两行代码可以实现同样的效果。

char c = 'a'; //为一个char 类型的变量赋值字符'a'
char ch = 97; //为一个char 类型的变量赋值整数97,相当于赋值字符'a'
  • 布尔类型变量

布尔类型变量用来存储布尔值,在Java中用boolean表示,该类型的变量只有两个值,即true和false。具体示例如下:

boolean flag = false; //声明一个boolean 类型的变量,初始值为false
flag = true; //改变flag 变量的值为true
未经允许不得转载: 技术文章 » Java编程 » Java变量的数据类型