文章插图
前言Java语言的数据类型是Java语言中最基础也是最重要的知识,参加Java笔试的时候应该是必考的,参加面试的时候也有可能会问到,以此考察面试者对Java基础知识的掌握程度 。
Java语言的数据类型可以分为:基本数据类型和引用数据类型 。在Java中,引用数据类型的变量非常类似于C/C++的指针,对象、数组都是引用数据类型 。本文重点介绍Java的基本数据类型 。
Java基本数据类型Java语言内置的基本数据类型共有8种,可以分为四类:
整数类型:long、int、short、byte浮点类型:float、double字符类型:char布尔类型:boolean整数类型
四种整数类型分别有不同的位数:
byte 数据类型是8位、有符号的以二进制补码表示的整数;short 数据类型是 16 位、有符号的以二进制补码表示的整数;int 数据类型是32位、有符号的以二进制补码表示的整数;long 数据类型是 64 位、有符号的以二进制补码表示的整数 。有符号数是指数值有正负号的区别 。计算机中的有符号数有三种表示方法,即原码、反码和补码 。三种表示方法均有符号位和数值位两部分,符号位都是用0表示“正”,用1表示“负”,而数值位,三种表示方法各不相同 。
二进制补码:正整数的补码是其二进制表示;0的补码就是全0;负整数的补码是除符号位外的所有位取反后加1 。
比如byte类型-5的补码:-5带符号位是10000101,除符号位全部取反是11111010,再加1就是11111011,就得到了-5的补码 。
浮点类型
float 数据类型是单精度32位、符合IEEE 754标准的浮点数;double 数据类型是双精度64 位、符合IEEE 754标准的浮点数 。IEEE 754标准是一种浮点数的表示形式,篇幅有限,本文暂不做详细描述 。
float 比 double 更节省空间,double可以存储精度更高的浮点数 。两者均不建议用来表示货币,货币应该用整数类型表示 。
字符类型
char类型是一个16 位 Unicode 字符,最小值是 u0000(即为 0);最大值是 uffff(即为65535) 。
布尔类型
boolean数据类型只有两种取值,true(真)或false(假) 。
默认值和取值范围
每一种基本数据类型都有系统默认值,在JVM为其分配内存的时候就会以系统默认值初始化 。现将每一种数据类型的默认值和取值范围总结如下 。
基本数据类型的默认值和取值范围
对于每一种数据类型的取值范围,我们不需要刻意记忆,这些取值范围都已经以常量的形式定义在基本数据类型对应的包装类中 。
基本类型与对应包装类
每一种基本类型,在java.lang中都有对应的包装类,比如boolean类型对应的包装类是 java.lang.Boolean 。将基本数据类型封装成对象的好处在于可以在对象中定义更多的功能方法来操作该数据 。比如包装类的 toString() 方法用于基本数据类型与字符串之间的转换 。
类型转换
基本数据类型的类型转换分为自动类型转换 和 强制类型转换 。
自动类型转换,也称隐式类型转换,是指不需要书写代码,由系统自动完成的类型转换 。转换规则:从存储范围小的类型到存储范围大的类型 。
byte b = 10;short sh = b;
因为 b 是byte型,存储范围比short型小,所以JVM可以自动把 b 转换为short型,并赋值给 sh.
强制类型转换,也称显式类型转换,是指必须书写代码才能完成的类型转换 。转换规则:从存储范围大的类型到存储范围小的类型 。可能会造成精度损失 。
double pi = 3.14;int p = (int) pi; //这里就是强制转换
以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!
「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助:- 学java到底怎么样 学java好吗
- 禁用javascript的好处 javascript特点有哪些
- java远程调用python脚本讲解 java执行python代码
- 学java好吗 学java好吗
- html简易计算器代码 javascript计算器代码
- 面试回答技巧 java面试技巧自我介绍
- 中高级java开发面试题 java高级面试题库
- java入门简单小项目 java项目搭建流程
- java冒泡排序 javascript的全局函数有哪些
- 讲解java中常见的数据类型 java中数据类型转换