java基础知识整理 (一) - - - - - - 存储和基本数据类型

1 存储

    寄存器:位于处理器内部,寄存器数量有限,需要根据需求分配,不能直接控制,程序中也看不出来使用迹象.速度最快.

    堆栈:位于RAM(随机访问存储器)中,通过堆栈指针进行控制.指针下移,分配新的内存;指针上移,释放相应的内存.快速有效,仅次于寄存器.

    堆:一种通用的内存池(也位于RAM),用于存放所有的java对象.堆不同于堆栈的地方:编译器不需要知道存储的数据在堆里存活多久.因此,堆里分配存储空间很灵活.缺点就是在堆里分配存储和清理可能需要更多时间.

    常量存储:直接放在程序代码的内部,不会被改变.

    非RAM存储:流对象和持久化对象.流对象就是通过流的形式将数据存储到服务器上.持久化对象,保存到本地的磁盘空间上.

2 基本类型

   

基本类型大小(bits)最小值最大值包装器类型
boolean---Boolean
char16Unicode 0Unicode 2^16-1Character
byte8-128127Byte
short16-2^152^15-1Short
int32-2^312^31-1Integer
long64-2^632^63-1Long
float32-2^312^31-1Float
double64-2^632^63-1Double
void---Void

 

 

 

 

 

 

 

 

 

 

布尔类型所占空间没有具体指定,只取字面值true 或者flase

所有类型都有正负号,没有无符号的数值类型.

java SE5之后,会自动将基本类型转换成包装器类型,包装基本类型的原因:

1 基本类型不具有对象的性质,为了让其具备对象的性质,就出现了包装器类型,需要包装成对象,丰富其操作;

2 当需要往ArrayList,HashMap中放东西时,像int,double这种基本类型是放不进去的,因为容器都是装object的,这是就需要这些基本类型的包装器类了。

3 为了判null,比如布尔类型只有两个值 true 或 false,创建之后必然有默认值,无法判断是否为null,而包装类型可以.

高精度数字:运算速度慢,牺牲速度获取精度

  BigInteger支持任意精度的整数.在运算时可以准备表示任意大小的整数而不丢失精度.

  BigDecimal支持任意精度的定点数.可以用来进行货币运算.

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值