Java数据类型详解

Java基本数据类型

Java语言是静态类型的(statical typed),也就是说所有变量和表达式的类型再编译时就已经完全确定。由于是statical typed,导致Java语言也是强类型(Strong typed)的。强类型意味着每个变量都具有一种类型,每个表达式具有一种类型,并且每种类型都是严格定义的,类型限制了变量可以hold哪些值,表达式最终产生什么值。同时限制了这些值可以进行的操作类型以及操作的具体方式。所有的赋值操作,无论是显式的还是在方法调用中通过参数传递,都要进行类型兼容性检查。

在java源代码中,每个变量都必须声明一种类型(type)。有两种类型:primitive type和reference type。引用类型引用对象(reference to object),而基本类型直接包含值(directly containvalue)。因此,Java数据(type)可以分为两大类:基本类型(primitive types)和引用类(reference types)。primitive types 包括boolean类型以及数值类型(numeric types)。numerictypes又分为整型(integer types)和浮点型(floating-point type)。整型有5种:byte short int long char(char本质上是一种特殊的int)。浮点类型有float和double。关系整理一下如下图:
在这里插入图片描述

Java八大数据类型

Java基本类型共有八种,基本类型可以分为三类,字符类型char,布尔类型boolean以及数值类型byte、short、int、long、float、double。数值类型又可以分为整数类型byte、short、int、long和浮点数类型float、double。JAVA中的数值类型不存在无符号的,它们的取值范围是固定的,不会随着机器硬件环境或者操作系统的改变而改变。实际上,JAVA中还存在另外一种基本类型void,它也有对应的包装类
java.lang.Void,不过我们无法直接对它们进行操作。8 中类型表示范围如下:

  • byte:1字节8位,最大存储数据量是255,存放的数据范围是-128~127之间。

  • short:2字节16位,最大数据存储量是65536,数据范围是-32768~32767之间。

  • int:4字节32位,最大数据存储容量是2的32次方减1,数据范围是负的2的31次方到正的2的31次方减1。

  • long:8字节64位,最大数据存储容量是2的64次方减1,数据范围为负的2的63次方到正的2的63次方减1。

  • float:4字节32位,数据范围在3.4e-45~1.4e38,直接赋值时必须在数字后加上f或F。

  • double:8字节64位,数据范围在4.9e-324~1.8e308,赋值时可以加d或D也可以不加。

  • boolean:只有true和false两个取值。

  • char:2字节16位,存储Unicode码,用单引号赋值。

数据类型转换

自动转换时发生扩宽(widening
conversion)。因为较大的类型(如int)要保存较小的类型(如byte),内存总是足够的,不需要强制转换。如果将字面值保存到byte、short、char、long的时候,也会自动进行类型转换。注意区别,此时从int(没有带L的整型字面值为int)到byte/short/char也是自动完成的,虽然它们都比int小。在自动类型转化中,除了以下几种情况可能会导致精度损失以外,其他的转换都不能出现精度损失。

》int–> float

》long–> float

》long–> double

》float -->double without strictfp

除了可能的精度损失外,自动转换不会出现任何运行时(run-time)异常。

在这里插入图片描述

小知识:
1.bit就是位,也叫比特位,是计算机表示数据最小的单位
2.byte就是字节
3.1byte=8bit ,0001 1100,一般用两个16进制来显示,所以我们经常看到1个字节显示为 1c
4.1byte就是1B

Java中的常量

  • 十六进制整型常量:以十六进制表示时,需以0x或0X开头,如0xff,0X9A。

  • 八进制整型常量:八进制必须以0开头,如0123,034。

  • 长整型:长整型必须以L作结尾,如9L,342L。

  • 浮点数常量:由于小数常量的默认类型是double型,所以float类型的后面一定要加f(F)。同样带小数的变量默认为double类型。

如:float f;

 f=1.3f;//必须声明f。
  • 字符常量:字符型常量需用两个单引号括起来(注意字符串常量是用两个双引号括起来)。Java中的字符占两个字节。一些常用的转义字符:

①\r表示接受键盘输入,相当于按下了回车键;

②\n表示换行;

③\t表示制表符,相当于Table键;

④\b表示退格键,相当于Back Space键;

⑤’表示单引号;

⑥’'表示双引号;

⑦\表示一个斜杠\。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值