Java基本数据类型在常量池中的体现

简介: Java基本数据类型在常量池中的体现                                         老帅        基本数据类型的使用量是很大的,java常量池,在节省内存方面是一个很好的机制,相同的数据,在常量池中只要保留一份即可。

Java基本数据类型在常量池中的体现

                                         老帅

        基本数据类型的使用量是很大的,java常量池,在节省内存方面是一个很好的机制,相同的数据,在常量池中只要保留一份即可。

        Java的8种基本类型(Byte, Short, Integer, Long, Character, Boolean, Float, Double), 除Float和Double以外, 其它六种都实现了常量池, 但是它们只在大于等于-128并且小于等于127时才使用常量池。

由如下例子可以看出:

 

结果如下:

等于127:
true
*****************
等于128:
false
*****************
等于-128:
true
*****************
等于-129:
false
*****************
测试Boolean
true
false

当我们给Integer赋值时,实际上调用了Integer.valueOf(int)方法,查看源码,其实现如下:

 

 

而IntegerCache实现如下:

 

注意cache数组是静态的。

相关文章
|
14天前
|
存储 Java
Java中的基本数据类型有哪些?它们的大小和取值范围是多少?
Java基础数据类型:4种整型(byte[-128,127],short[-32,768,32,767]),2种浮点(float,double),1种字符(char,Unicode),1种布尔(true,false)。
17 0
|
1月前
|
Java
JAVA基本数据类型输入输出流
JAVA基本数据类型输入输出流
16 0
|
1月前
|
存储 算法 Java
Java基本数据类型
Java基本数据类型
22 1
|
1月前
|
Java 数据库连接 API
Java 学习路线:基础知识、数据类型、条件语句、函数、循环、异常处理、数据结构、面向对象编程、包、文件和 API
Java 是一种广泛使用的、面向对象的编程语言,始于1995年,以其跨平台性、安全性和可靠性著称,应用于从移动设备到数据中心的各种场景。基础概念包括变量(如局部、实例和静态变量)、数据类型(原始和非原始)、条件语句(if、else、switch等)、函数、循环、异常处理、数据结构(如数组、链表)和面向对象编程(类、接口、继承等)。深入学习还包括包、内存管理、集合框架、序列化、网络套接字、泛型、流、JVM、垃圾回收和线程。构建工具如Gradle、Maven和Ant简化了开发流程,Web框架如Spring和Spring Boot支持Web应用开发。ORM工具如JPA、Hibernate处理对象与数
94 3
|
1月前
|
存储 Java
Java基本数据类型
Java基本数据类型
7 0
|
1月前
|
存储 缓存 Java
JAVA基本数据类型的包装类
JAVA基本数据类型的包装类
15 0
|
1月前
|
存储 Java
JAVA基本数据类型
JAVA基本数据类型
13 0
|
1月前
|
存储 Java 索引
Java数据类型
Java数据类型
13 0
|
1月前
|
安全 Java
java-基本数据类型的类封装
java-基本数据类型的类封装
14 0
|
1月前
|
存储 Java
Java数据类型
Java数据类型
12 2