第一章 java的数据类型

java的数据类型

Java是一种强类型语言,每个变量都必须声明其类型。

为什么要声明类型?

当创建变量的时候,需要在内存中申请空间。内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用来储存该类型数据。

java中数据类型分为两种,1、基本类型 2、引用类型

一、基本类型
基本数据类型分为3类8种,何为3类8种?
就是基本类型的8种类型分了3个类别
数值型-byte, short, int, long, float, double
逻辑型-boolean
字符型-char

每个基本数据类型都有自己的包装类,目的是为基本数据类型进行封装。封装的好处有很多,例如泛型就不能用基本数据类型。如果多个方法共同操作一个基本数据类型的数据,而基本数据类型是赋值之后要在stack(栈区域)进行存储的,那么就会同时修改这个值,而包装类属于引用数据类型,存在堆区域,就可以避免这种情况。等等

突然有一天我有了个疑问,基本数据类型哪来的?

在java中我只找到了java.lang中的包装类,并没有找到基本数据类型基本数据类型 和 关键字, 后来终于发现原来都是在 jvm 里定义的想看的话, 去找 开源的 jdk,需要 C++ 支持

  1. byte
    范围:-128~127 (查看包装类源码可以看出来)
    包装类:Btye在这里插入图片描述

  2. short
    范围:-32768~32767
    包装类:Short
    在这里插入图片描述

  3. int
    范围:-2147483648~2147483647
    包装类:Integer
    在这里插入图片描述
    源码中的我们看到的是16进制,我们可以通过打印看一下这里十进制是多少
    在这里插入图片描述

  4. long
    范围:-9223372036854775808~9223372036854775807
    包装类:Long
    在这里插入图片描述
    同int一样我们看到还是16进制的,通过打印可以看到10进制数据9223372036854775807

  5. float
    float 数据类型是单精度、32位、符合IEEE 754标准的浮点数
    包装类:Float

  6. double
    double 数据类型是双精度、64 位、符合 IEEE 754 标准的浮点数
    包装类:Double

  7. boolean
    只有两个取值:true 和 false,默认值是false
    包装类:Boolean

  8. char
    char 类型是一个单一的 16 位 Unicode 字符,char 数据类型可以储存任何字符.
    包装类:Character

float 和 double 详细的问题我会在下一章细讲一下

二、引用类型
对象、数组都是引用数据类型,所有引用类型的默认值都是null,使用new操作符可以创建出类的一个实例,在java运行的时候,所有这些创建出来的实例都JAVA放在内存里一个叫堆的地方。引用数据类型是指向某个实体类型的一个东西,并不是实例本身。

java是一种面向对象的编程语言,万物皆对象,是不是可以理解为万物都可以是引用类型。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值