Java源代码之路---基础数据类型

本文探讨了Java中的基础数据类型,包括整数类型(byte, short, int, long)和浮点数类型(float, double)。这些类型均继承自抽象类Number。特别地,整数类型的封装类(Byte, Integer, Short, Long)利用内部类实现缓存,缓存范围一般为-128到127。此外,文章还提及了不同进制表示和浮点数的ToString方法,以及在需要精确运算时使用BigDecimal的重要性。" 117344358,10540465,Android VideoView 音量控制与反射技术应用,"['Android开发', '多媒体处理', '反射技术']
摘要由CSDN通过智能技术生成

Java源代码基础数据类型

1、Java与数先关的基础数据类型主要分整数与浮点数,整数:byte,short,int,long,浮点数:float,double

2、数据范围

类型 范围
byte -128~127(2^7-1)
short -32768~32767(2^15-1)
int -2147483648~2147483647(2^31-1)21亿(10位)
long -9223372036854775808~9223372036854775807(2^63-1)19位
float +/-2^−149,+/-2^128
double +/-2^−1074,+/-2^1024

3、六个类型均继承自Number,Number类为抽象类

public abstract class Number implements java.io.Serializable {
   
    public abstract int intValue();
    public abstract int longValue();
    public abstract int floatValue();
    public abstract int doubleValue();
    public byte byteValue() {
        return (byte)intValue();
    }
    public short shortValue() {
        return (short)intValue();
    }
}

4、整数的byte、short、int、long对于的封装类,都有相关的缓存操作,具体实现是通过内部类

    private static class LongCache {
        private LongCache(){}

        static final Long cache[] = new Long[-(-128) + 127 + 1];

        static {
            for(int i = 0; i < cache.length; i++)
                cache[i] = new Long(i - 128);
        }
    }

Byte对应ByteCache,Integer对应IntegerCache,Short对应ShortCache,Long对应LongCache,它们的缓存范围都是从-128~127。其中IntegerCache提供了可通过属性设置“java.lang.Integer.IntegerCache.high”设置缓存的最大值。

举个有趣的栗子

        Integer c = 3;
        Integer d = 3;
        int e = 321;
        Integer g = 321;
        Integer h = 321;

        
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值