java支持的数据类型2023006
创始人
2024-05-13 00:09:51
0

Java语言支持的类型分为两类:基本类型(Primitive Type)和引用类型(Reference Type)。
–基本类型包括boolean类型和数值类型。数值类型有整数类型和浮点类型。整数类型包括byte、short、int、long、char,浮点类型包括float和double。
提示:
char代表字符型,实际上字符型也是一种整数类型,相当于无符号整数类型。
–引用类型包括类、接口和数组类型,还有一种特殊的null类型。所谓引用数据类型就是对一个对象的引用,对象包括实例和数组两种。实际上,引用类型变量就是一个指针,只是Java语言里不再使用指针这个说法。
空类型(null type)就是null值的类型,这种类型没有名称。因为null类型没有名称,所以不可能声明一个null类型的变量或者转换到null类型。空引用(null)是null类型变量唯一的值,空引用(null)可以转换为任何引用类型。
在实际开发中,程序员可以忽略null类型,假定null只是引用类型的一个特殊直接量。
注意:
空引用(null)只能被转换成引用类型,不能转换成基本类型,因此不要把一个null值赋给基本数据类型的变量。

Java的基本数据类型分为两大类:boolean类型和数值类型。
而数值类型又可以分为整数类型和浮点类型,整数类型里的字符类型也可被单独对待。因此常把Java里的基本数据类型分为4类,Java只包含这8种基本数据类型,值得指出的是,字符串不是基本数据类型,字符串是一个类,也就是一个引用数据类型。

在这里插入图片描述
通常所说的整型,实际指的是如下4种类型。
byte : 一 个 byte 类 型 整 数 在 内 存 里 占 8 位 , 表 数 范 围是-128(-2的7次方)~127(2的7次方-1)。
short:一个short类型整数在内存里占16位,表数范围是-32768(-2的15次方)~32767(2的15-次方1)。
Int:一个 int 类 型 整 数 在 内 存 里 占 32 位,表数范围是-2147483648(-2的31次方)~2147483647(231-1)。
long:一个long类型整数在内存里占64位,表数范围是(-2的63次方)~(263-1)。
int是最常用的整数类型,因此在通常情况下,直接给出一个整数
值默认就是int类型。除此之外,有如下两种情形必须指出。
如果直接将一个较小的整数值(在byte或short类型的表数范 围内)赋给一个byte或short变量,系统会自动把这个整数值当成byte或者short类型来处理。
如果使用一个巨大的整数值(超出了int类型的表数范围)时,Java不会自动把这个整数值当成long类型来处理。如果希望系统把一个整数值当成long类型来处理,应在这个整数值后增加l或者L作为后缀。通常推荐使用L,因为英文字母l很容易跟数字1搞混。

Java中整数值有4种表示方式:十进制、二进制、八进制和十六进制,其中:
二进制的整数以0b或0B开头;
八进制的整数以0开头;
十六进制的整数以0x或者0X开头,其中10~15分别以a~f(此处的a~f不区
分大小写)来表示。

字符型通常用于表示单个的字符,字符型值必须使用单引号(') 括起来。

浮点型
Java的浮点类型有两种:float和double。Java的浮点类型有固定的表数范围和字段长度,且字段长度和表数范围与机器无关。Java的浮点数遵循IEEE 754标准,采用二进制数据的科学计数法来表示浮点数,
对于float型数值,第1位是符号位,接下来8位表示指数,再接下来23位表示尾数;
对于double型数值,第1位是符号位,接下来的11位表示指数,再接下来52位表示尾数。
注意:
因为Java浮点数使用二进制数据的科学计数法来表示浮点数,因此可能不能精确表示一个浮点数。例如把5.2345556f值赋给一个float类型变量,接着输出这个变量时看到这个变量的值已经发生了改变。使用double类型的浮点数比float类型的浮点数更精确,但如果浮点数的精度足够高(小数点后的数字很多时),依然可能发生这种情况。如果开发者需要精确保存一个浮点数,则可以考虑使用BigDecimal类。
double类型代表双精度浮点数,float类型代表单精度浮点数。
一个double类型的数值占8字节、64位,
一个float类型的数值占4字节、32位。
Java语言的浮点数有两种表示形式:
–十进制数形式:这种形式就是简单的浮点数,例如5.12、512.0、.512。浮点数必须包含一个小数点,否则会被当成int类型处理。
–科学计数法形式:例如5.12e2(即5.12×102),5.12E2(也是5.12×102)。必须指出的是,只有浮点类型的数值才可以使用科学计数法形式表示。例如,51200是一个int类型的值,但512E2则是浮点类型的值。
Java语言的浮点类型默认是double类型,如果希望Java把一个浮点类型值当成float类型处理,应该在这个浮点类型值后紧跟f或F。例如,
5.12代表一个double类型的值,占64位的内存空间,默认是double的;
5.12f或者5.12F才表示一个float类型的值,占32位的内存空间。
当然,也可以在一个浮点数后添加d或D后缀,强制指定double类型,但通常没必要。
Java还提供了三个特殊的浮点数值用于表示溢出和出错:
正无穷大:使用一个正数除以0将得到正无穷大,通过Double 或 Float类的POSITIVE_INFINITY 表 示 ;
负无穷大:使用一个负数除以0将得到负无穷大,通过Double 或 Float类的NEGATIVE_INFINITY表示;
非数:0.0除以0.0或对一个负数开方将得到一个非数,非数通过Double或Float类的NaN表示。
必须指出的是,
–所有的正无穷大数值都是相等的,所有的负无穷大数值都是相等的;
–NaN不与任何数值相等,甚至和NaN都不相等。
注意:
1.只有浮点数除以0才可以得到正无穷大或负无穷大,因为Java语 言会自动把和浮点数运算的0(整数)当成0.0(浮点数)处理。如果一个整数除以 0,则会抛出异常:ArithmeticException:/by zero(除以0异常)。

当程序中用到的数值位数特别多时,程序员眼睛“看花”了都看不清到底有多少位数。为了解决这种问题,Java 7引入了一个新功能:程序员可以在数值中使用下画线,不管是整型数值还是浮点型数值,都可以自由地使用下画线。通过使用下画线分隔,可以更直观地分辨数值中到底包含多少位。如下面程序所示:double a = 4.56_67777_56777;

布尔型:
布尔型只有一个boolean类型,用于表示逻辑上的“真”或 “假”。在Java语言中,boolean类型的数值只能是true或false,不能用0或者非0来代表。其他基本数据类型的值也不能转换成boolean类型。
提示:
Java规范并没有强制指定boolean类型的变量所占用的内存空 间。虽然boolean类型的变量或值只要1位即可保存,但由于大部分 计算机在分配内存时允许分配的最小内存单元是字节(8位),因此
bit大部分时候实际上占用8位。
boolean类型的值或变量主要用做旗标来进行流程控制,Java语言中使用boolean类型的变量或值控制的流程主要有如下几种。
➢ if条件控制语句
➢ while循环控制语句
➢ do while循环控制语句
➢ for循环控制语句
除此之外,boolean类型的变量和值还可在三目运算符(?:)中使用。

相关内容

热门资讯

电视安卓系统哪个品牌好,哪家品... 你有没有想过,家里的电视是不是该升级换代了呢?现在市面上电视品牌琳琅满目,各种操作系统也是让人眼花缭...
安卓会员管理系统怎么用,提升服... 你有没有想过,手机里那些你爱不释手的APP,背后其实有个强大的会员管理系统在默默支持呢?没错,就是那...
安卓系统软件使用技巧,解锁软件... 你有没有发现,用安卓手机的时候,总有一些小技巧能让你玩得更溜?别小看了这些小细节,它们可是能让你的手...
安卓系统提示音替换 你知道吗?手机里那个时不时响起的提示音,有时候真的能让人心情大好,有时候又让人抓狂不已。今天,就让我...
安卓开机不了系统更新 手机突然开不了机,系统更新还卡在那里,这可真是让人头疼的问题啊!你是不是也遇到了这种情况?别急,今天...
安卓系统中微信视频,安卓系统下... 你有没有发现,现在用手机聊天,视频通话简直成了标配!尤其是咱们安卓系统的小伙伴们,微信视频功能更是用...
安卓系统是服务器,服务器端的智... 你知道吗?在科技的世界里,安卓系统可是个超级明星呢!它不仅仅是个手机操作系统,竟然还能成为服务器的得...
pc电脑安卓系统下载软件,轻松... 你有没有想过,你的PC电脑上安装了安卓系统,是不是瞬间觉得世界都大不一样了呢?没错,就是那种“一机在...
电影院购票系统安卓,便捷观影新... 你有没有想过,在繁忙的生活中,一部好电影就像是一剂强心针,能瞬间让你放松心情?而我今天要和你分享的,...
安卓系统可以写程序? 你有没有想过,安卓系统竟然也能写程序呢?没错,你没听错!这个我们日常使用的智能手机操作系统,竟然有着...
安卓系统架构书籍推荐,权威书籍... 你有没有想过,想要深入了解安卓系统架构,却不知道从何下手?别急,今天我就要给你推荐几本超级实用的书籍...
安卓系统看到的炸弹,技术解析与... 安卓系统看到的炸弹——揭秘手机中的隐形威胁在数字化时代,智能手机已经成为我们生活中不可或缺的一部分。...
鸿蒙系统有安卓文件,畅享多平台... 你知道吗?最近在科技圈里,有个大新闻可是闹得沸沸扬扬的,那就是鸿蒙系统竟然有了安卓文件!是不是觉得有...
宝马安卓车机系统切换,驾驭未来... 你有没有发现,现在的汽车越来越智能了?尤其是那些豪华品牌,比如宝马,它们的内饰里那个大屏幕,简直就像...
p30退回安卓系统 你有没有听说最近P30的用户们都在忙活一件大事?没错,就是他们的手机要退回安卓系统啦!这可不是一个简...
oppoa57安卓原生系统,原... 你有没有发现,最近OPPO A57这款手机在安卓原生系统上的表现真是让人眼前一亮呢?今天,就让我带你...
安卓系统输入法联想,安卓系统输... 你有没有发现,手机上的输入法真的是个神奇的小助手呢?尤其是安卓系统的输入法,简直就是智能生活的点睛之...
怎么进入安卓刷机系统,安卓刷机... 亲爱的手机控们,你是否曾对安卓手机的刷机系统充满好奇?想要解锁手机潜能,体验全新的系统魅力?别急,今...
安卓系统程序有病毒 你知道吗?在这个数字化时代,手机已经成了我们生活中不可或缺的好伙伴。但是,你知道吗?即使是安卓系统,...
奥迪中控安卓系统下载,畅享智能... 你有没有发现,现在汽车的中控系统越来越智能了?尤其是奥迪这种豪华品牌,他们的中控系统简直就是科技与艺...