文档章节

JAVA自动装箱实例

kanlianhui
 kanlianhui
发布于 2014/04/01 10:59
字数 196
阅读 82
收藏 5
public class AutoBoxing {

	public static void main(String[] args) {
		Integer a= 1;
		Integer b= 2;
		Integer c= 3;
		Integer d= 3;
		Long g = 3L;
		Integer x= 128;
		Integer y= 128;
		System.out.println(c==d);
		System.out.println(x==y);
		System.out.println(c==(a+b));
		System.out.println(c.equals(a+b));
		System.out.println(g== (a+b));
		System.out.println(g.equals(a+b));
		
	}

}

在自动装箱时对于值从–128到127之间的值,它们被装箱为Integer对象后,会存在内存中被重用。

”==“在没有遇到运算符的时候不会自动拆箱,equals() 不会处理数据转型的关系。 


编译后:

public class AutoBoxing
{
  public static void main(String[] args)
  {
    Integer a = Integer.valueOf(1);
    Integer b = Integer.valueOf(2);
    Integer c = Integer.valueOf(3);
    Integer d = Integer.valueOf(3);
    Long g = Long.valueOf(3L);
    Integer x = Integer.valueOf(128);
    Integer y = Integer.valueOf(128);
    System.out.println(c == d);
    System.out.println(x == y);
    System.out.println(c.intValue() == a.intValue() + b.intValue());
    System.out.println(c.equals(Integer.valueOf(a.intValue() + b.intValue())));
    System.out.println(g.longValue() == a.intValue() + b.intValue());
    System.out.println(g.equals(Integer.valueOf(a.intValue() + b.intValue())));
  }
}

输出:

true
false
true
true
true
false


© 著作权归作者所有

kanlianhui
粉丝 9
博文 80
码字总数 36440
作品 0
浦东
私信 提问
加载中

评论(3)

不愿透露姓名的Mr成
不愿透露姓名的Mr成
刘虎
kanlianhui
kanlianhui 博主

引用来自“Mr'Cheng”的评论

楼主学过C#吧,java叫包装类型

翻译不一样吧。英文:autoboxing~ http://docs.oracle.com/javase/1.5.0/docs/guide/language/autoboxing.html

不愿透露姓名的Mr成
不愿透露姓名的Mr成
楼主学过C#吧,java叫包装类型
Java自动装箱-拆箱机制究竟是什么

支持原文:http://tryenough.com/java-autobox 自动装箱和拆箱从Java 1.5开始引入,目的是将原始类型值转自动地转换成对应的对象。 什么是自动装箱和拆箱 自动装箱就是Java自动将原始类型值转...

TryEnough
03/13
0
0
int和Integer深入分析

目录介绍 1.关于int和Integer的问题区别分析 2.Integer的值缓存的原理 2.1 Java 5 中引入缓存特性 2.2 Integer类中的IntegerCache类 2.3 其他整型类型的缓存机制 3.理解自动装箱和拆箱 3.1 ...

潇湘剑雨
2018/08/27
48
1
深入浅出 Java 中的包装类

前阵子,我们分享了《Java中的基本数据类型转换》这篇文章,对许多粉丝还是有带来帮助的,今天讲一下 Java 包装类的的由来,及自动装箱、拆箱的概念和原理。 什么是包装类型 Java 设计当初就...

Java技术栈
2018/09/14
0
0
理解Java Integer的缓存策略

版权声明:欢迎关注我的微信公众号:「easyserverdev」,中文名:『高性能服务器开发』。 https://blog.csdn.net/analogous_love/article/details/80095818 本文将介绍 Java 中 Integer 缓存...

analogous_love
2018/04/26
0
0
java核心基础 --- 基本数据类型

本篇博文主要介绍 java 基础数据类型、基本类型的数据转换、自动装箱拆箱机制。 1. 基础数据类型 整型 整型包含 byte(1字节)、short(2字节)、int(4字节)、long(8字节) 需要注意的是,...

firepation
01/24
55
0

没有更多内容

加载失败,请刷新页面

加载更多

计算机实现原理专题--二进制减法器(二)

在计算机实现原理专题--二进制减法器(一)中说明了基本原理,现准备说明如何来实现。 首先第一步255-b运算相当于对b进行按位取反,因此可将8个非门组成如下图的形式: 由于每次做减法时,我...

FAT_mt
昨天
6
0
好程序员大数据学习路线分享函数+map映射+元祖

好程序员大数据学习路线分享函数+map映射+元祖,大数据各个平台上的语言实现 hadoop 由java实现,2003年至今,三大块:数据处理,数据存储,数据计算 存储: hbase --> 数据成表 处理: hive --> 数...

好程序员官方
昨天
7
0
tabel 中含有复选框的列 数据理解

1、el-ui中实现某一列为复选框 实现多选非常简单: 手动添加一个el-table-column,设type属性为selction即可; 2、@selection-change事件:选项发生勾选状态变化时触发该事件 <el-table @sel...

everthing
昨天
6
0
【技术分享】TestFlight测试的流程文档

上架基本需求资料 1、苹果开发者账号(如还没账号先申请-苹果开发者账号申请教程) 2、开发好的APP 通过本篇教程,可以学习到ios证书申请和打包ipa上传到appstoreconnect.apple.com进行TestF...

qtb999
昨天
10
0
再见 Spring Boot 1.X,Spring Boot 2.X 走向舞台中心

2019年8月6日,Spring 官方在其博客宣布,Spring Boot 1.x 停止维护,Spring Boot 1.x 生命周期正式结束。 其实早在2018年7月30号,Spring 官方就已经在博客进行过预告,Spring Boot 1.X 将维...

Java技术剑
昨天
18
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部