Java 的基本数据类型

Java是一门面向对象的高级语言,但也保留了基本数据类型和运算符这些面向过程的元素。如何平衡对象和简单数据类型之间的抉择,被认为是设计面向对象语言所面临的挑战。Java很出色的完成了这个挑战。

Java中有八种基本数据类型,见下表:



数值类型 byte short char int long float double boolean
长度(字节) 1 2 2 4 8 4 8 1

包装器 Byte Short Character Integer Long Float Double Boolean

短字节类型向长字节类型转换,大多为无损转换。需要说明的有以下几点:



Java数据类型不存在unsigned;
byte、short、char的单目数学运算的返回结果自动转型为int类型,即byte b = 0; b+1的结果为int类型,而b++结果为byte类型,b += 3也是合法的语句;
Java的浮点数遵从IEEE754标准,int转float,long转double都不一定是无损的(读者可以自己思考哪些情况下是无损的)。而byte、short、char转float是无损的,byte、short、char、int、float转double也是无损的。
boolean值域只有两个值:false,true。
float、long、和double在赋值时,若所赋的值为数字常量后紧跟上"f"、"l"、"d"(大写也可)。
float赋值时,若所赋的值为浮点数常量,则必须在数字后边加“f”或“F”。
long在赋值时,若所赋的值为常整数,建议加上大写字母“L”,因为“l”在有些文本阅读器下,看着像“1”
啰嗦一句:注意越界和正负值域不对称。x > y 不完全等同于 -x y 不完全等同于 x - y > 0。当然,这一点在实际的编程中,基本是被忽略的。保留这种意识还是有必要的。
Java为基本数据类型设计了包装器,使得基本数据类型在必要时,能够参与到对象层次的操作中来。本文表中给出了各种基本数据类型的包装器。常见的使用这些包装器的场景,有泛型、对象引用等。泛型主要体现在容器的使用上,使得我们可以定义一个整形数字的链表,或者key-value的Map使用基本数据类型。
基本数据是可以直接访问的,而对象则只能通过引用来访问。Java对基本数据类型的设计方式,使得既可以实现高效编程,又能够建立对象模型,而不用担心对简单数据类型的性能会产生负面影响。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值