Java中一共有四大类基础数据类型:
- 整数
- 浮点型
- 字符
- 布尔值
展开后,一共是8种数据类型:
本文要讲的是上面8种数据类型中的前四种,他们表示的都是整数,只是范围不一样。从上表中,我们可以看到,占用字节数越多,表示的范围就越大,这跟钱越多买的房子就越大似乎是一个道理。
1、字节也就是byte,是最小的整数类型,如果你只是要记录127以内的数,这个就够用了。看看代码:
代码简析:
- main方法是程序执行入口。
- 第3行定义了一个byte类型的变量,赋值为127。
- 第4行,把这个变量给打印了出来。
你可能会想,如果强行赋值为128,又会怎样? 我只能说强扭的瓜不甜,不过你还是可以试试,说不定你厉害呢。
2、短整型短整型就short表示,表示范围要比byte多出一截,看看代码:
代码简析:
- main方法是程序执行入口。
- 第3行定义了一个short类型的变量,赋值为32767,就是数字的范围变大了一些。
- 第4行,把这个变量给打印了出来。
int表示整型,范围再扩大一些,占用了4个字节。看看代码样例:
代码简析:
- main方法是程序执行入口。
- 第3行定义了一个int类型的变量,赋值为0x7fffffff。这是十六进制的表示法,对应的十进制数为:2147483647。
- 第4行,把这个变量给打印了出来。
long表示长整型,范围再扩大一圈,占用了8个字节。看看代码样例:
代码简析:
- main方法是程序执行入口。
- 第3行定义了一个long类型的变量,赋值为0x7fffffffffffffffL。这是十六进制的表示法,对应的十进制数为:9223372036854775807。注意后面一定要跟上一个字母“L”,否则会报错,不信的话,可以自己试试。
- 第4行,把这个变量给打印了出来。
上面介绍了这么多,其实很啰嗦,因为四种类型,其实没多大差别,就是表示的数值范围有点变化而已。那你是不是有点疑问,为什么byte类型表示的是-128到127,而int则是-2147483648到2147483647?
计算机基本知识如果你有上面的疑问,那只能说,你真是用心了,有学习编程的潜质。
大家都知道计算机里使用的是二进制,那么我们的数值也是通过二进制来表示的。一个二进制位只能是0或1,只能表示2个数;两个二进制位,则可以表示4个数,即2的平方;3个二进制位,可以表示2的3次方个数,依次推理下去。以byte类型为例
byte类型,占用1个字节,1个字节=8个二进制位,那就可以表示2的8次方个数,即256个数,但是因为除了正数,还有负数,所以这8个位中的第一位需要拿出来表示正数还是负数,就只剩下7个位来表示真正的数位。
当第一位为0,其他位都是1时,就是最大数127:
当第一位为1,而其他位都是0时,则是最小数-128:
好啦,byte的讲完,其他的类型直接顺推就可以了,把浪费各位的大好青春了,就此别过。
声明: 因本文前期在头条发布并且当时名称为“十代码农”,所以截图带有十代码农的水印。