java的基本数据类型总结扩展

数据类型

  数据类型包括基本数据类型和引用数据类型。基本数据类型为以上八个基本数据类型。引用数据类型包括类,接口和数组。
  数据类型在做参数的时候。基本数据类型转递的是值的复制,并不会影响主函数中的基本类型变量。引用数据类型传递的是引用的复制,会影响主函数中的引用类型变量。

基本数据类型

四个整型

默认值 0
byte 字节型 8位,主要用来处理二进制流;

short 短整型 16位

int 整型 32位 Java中整数的默认数据类型是int

long 长整型 64位

2个浮点型

默认值 0.0

float 单精度 32位

double 双精度 64位 double是浮点数的默认类型

1个字符

默认值 null;

char 16位 Java中使用 ’ ’ 表示字符 用 ” “ 表示字符串

布尔值

默认值是false

boolean 1位

只能赋值true 和 false Java不可以使用1和0来表示真和假,布尔值不可以转成数字。
一般用作判断语句的条件。

类型提升

byte+short的变量在运算的过程中会自动的提升为int类型

long g1 = 4654564564L; 要加大写L或小写l说明是long类型,应为默认是int没有说明会报错

byte+short+int+long = long

类型转换

  • 数据类型转换规则

    数据类型转换规则:从小到大自动转,从大到小强制转。
    在这里插入图片描述

  从byte到double可以自动转化,虽然char和short都是16位,但是之间需要强制 转换,byte和char之间也需要强制转换。

  • 低精度向高精度转换

  低精度向高精度是可以自由转换的,把小的放进大的里,一定可以放进去。

  • 高精度向低精度转换

  高精度向低精度转换需要强制转换,可能会造成精度丢失,比如,byte b; long l=5;i=l;进行强制转换后数值正确,但是 byte b; long l=150;i=l;输出i=44;l=150超过了byte的最大长度,这就造成了精度丢失。

封装类

  封装类是对应了八个基本数据类型封装而形成的类。

基本数据类型封装类基本数据类型缺省值封装类缺省值
byteByte0null
shortShort0null
intInteger0null
longLong0null
floatFloat0.0null
doubleDouble0.0null
charCharacter‘’null
booleanBooleanfalsenull

基本数据类型和封装类的比较

  1. 存储:基本数据类型是直接将值存储在栈中,包装类是将对象放在堆中,然后通过堆中的引用来调用对象。
  2. 声明:包装类需要new在堆内存中进行new来分配内存空间 。
  3. 缺省值:封装类的缺省值为null’
  4. 使用方式:基本数据类型直接使用;封装类多在集合中使用,可以使用基本数据类型不能使用的方法如ValueOf(),toString()等

number类

数字封装类有 Byte,Short,Integer,Long,Float,Double 这些类都是抽象类Number的子类。

拆箱和装箱

装箱定义: 将基本数据类型转成封装类型的过程。

int i = 5;
//基本类型转换成封装类型
Integer it = new Integer(i);

拆箱定义: 将封装类转成基本数据类型的过程。

Integer it = new Integer(i);
//封装类型转换成基本类型
int i2 = it.intValue();

自动装箱:

 int i = 5;
//基本类型转换成封装类型
Integer it = new Integer(i);
//自动转换就叫装箱
Integer it2 = i;

自动拆箱:

 int i = 5;
Integer it = new Integer(i);
//封装类型转换成基本类型
int i2 = it.intValue();
//自动转换就叫自动拆箱
 int i3 = it;

如果在 表达式 中出现了封装类和基本数据类型,则封装类会自动拆箱转成基本数据类型参与运算。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值