Java教程-int和Integer有什么区别

int和Integer的区别

1、Integer是int的包装类,int则是java的一种基本数据类型
2、Integer变量必须实例化后才能使用,而int变量不需要
3、Integer实际是对象的引用,当new一个Integer时,实际上是生成一个指针指向此对象;而int则是直接存储数据值
4、Integer的默认值是null,int的默认值是0

关于Integer和int的比较

1、由于Integer变量实际上是对一个Integer对象的引用,所以两个通过new生成的Integer变量永远是不相等的(因为new生成的是两个对象,其内存地址不同)。

代码如下:

1、Integer i = new Integer(100);
2、Integer j = new Integer(100);
3、System.out.print(i == j); //false

2、Integer变量和int变量比较时,只要两个变量的值是相等的,则结果为true(因为包装类Integer和基本数据类型int比较时,java会自动拆包装为int,然后进行比较,实际上就变为两个int变量的比较)

1、Integer i = new Integer(100);
2、int j = 100;
3、System.out.print(i == j); //true

3、非new生成的Integer变量和new Integer()生成的变量比较时,结果为false。(因为非new生成的Integer变量指向的是java常量池中的对象,而new Integer()生成的变量指向堆中新建的对象,两者在内存中的地址不同)

Integer i = new Integer(100);
Integer j = 100;
System.out.print(i == j); //false

(0)

相关推荐

  • 一文讲解Java基本数据类型的包装类

    Java语言是一种面向对象的语言,但Java中的基本数据类型却是非面向对象的,这在实际使用中存在着许多不便,为了解决这种不足,在设计类时为每一种基本数据类型设计了相应的类,这样八种与基本数据类型相对应 ...

  • 包装类简述

    一.前言(可忽略) 作者是一位自学JAVA的小白,通过网上视频学习和自己对包装类的理解,现将自己对包装类的认知描述如下:(希望能与各位同行好友共同分享自己所学的java知识,同时,也热切期望各位同行前 ...

  • Java教程-重载和重写的区别

    Java教程-重载和重写的区别

  • (int)、int.Parse()、int.TryParse()、Convert.ToInt32()区别

    请看代码: //1.null. //int i1 = (int)null;//编译时报错:无法将"null"转换为"int",因为后者是不可以为"nu ...

  • JMeter的客户端实现中Java、httpclint4和默认选项的区别

    如上图:jmeter客户端实现方式有三种,一种是java,一种是httpclient4,还有一种默认,我们来看一下java与httpclient4的区别: Java:选择压测时,链接是复用的(代码中的 ...

  • 中级Java教程面试题

    对java面试而言,面试前的准备一定要有面试题收集和学习这一项,因为在招聘公司看来,对java工程师职位的最大关注就是专业知识和技能水平的考察,所以程序员去公司面试,无论怎样都要先做一套面试题.对于不 ...

  • 最新Java教程:在Java中使用便携式ONNX AI模型

    在我们关于2020年使用便携式神经网络的系列文章中,您将了解如何在x64架构上安装ONNX并在Java中使用它. 微软与Facebook和AWS共同开发了ONNX.ONNX格式和ONNXRuntime ...

  • 2021最新整理Java教程:Java 智能卡迷你计算器

    介绍 本文是关于编写基于Java智能卡的应用程序.本教程将帮助初学者理解Java智能卡和主机应用程序之间的概念和通信.我已经看到Java智能卡技术的初学者提出了一些简单的问题,所以我决定为他们提供一个 ...

  • Java教程——LinkedHashMap源码分析

    大多企业级项目开发都会选择Java,这使得我们Java工程师们都是"全能型"人才,这使得项目经验成为了Java人面试的重头戏之一. 简介 LinkedHashMap内部维护了一个双 ...

  • Java教程的基础语法大汇总

    一个Java程序可以认为是一系列对象的集合,而这些对象通过调用彼此的方法来协同工作.下面简要介绍下类.对象.方法和实例变量的概念. 对象:对象是类的一个实例,有状态和行为.例如,一条狗是一个对象,它的 ...

  • Java教程- Java中hashCode与equals方法

    如何在父类中为子类自动完成hashCode和equals实现,这么做有什么优劣?说一下Object类中hashCode与equals方法的理解,在什么场景下需要实现这两个方法? 有没有可能两个不相等的 ...