首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

intinteger区别

intinteger区别从大方面来说就是基本数据类型与其包装类区别: int 是基本类型,直接存数值,而integer对象,用一个引用指向这个对象 1.Java 中数据类型分为基本数据类型和复杂数据类型...int 是前者而integer 是后者(也就是一个类);因此在类进行初始化时int变量初始为0.而Integer变量则初始化为null. 2.初始化时:   int i =1;Integer i...Java中每种内建类型都有相应外覆类。   Java中intInteger关系是比较微妙。...关系如下:   1.int是基本数据类型;   2.Integerint封装类;   3.intInteger都可以表示某一个数值;   4.intInteger不能够互用,因为他们两种不同数据类型...对象一样来进行处理,那么就要用Integer来声明一个对象,因为java是面向对象语言,因此当声明为对象时能够提供很多对象间转换方式,一些常用 方法。

1.1K60
您找到你想要的搜索结果了吗?
是的
没有找到

Java int Integer 区别

学习借鉴(其实搬了别人好多)和自己理解,可能会有较多错误,如有疑问联系我呀。 int  是基本数据类型, Integer 是引用类型,也就是一个对象。...int 储存是数值,Integer 储存是引用对象地址。 int 占用内存少、Integer 对象占用内存多,因为它需要存储对象元数据。...不是用 new 生成 Integer 变量 new Integer ( ) 生成变量不同,因为前者是在常量池中,后者是在堆中,两个地址不同。...两个不是 new 生成 Integer 对象比较,如果变量值在 [ -128 , 127 ] 之间,比较结果为 true,否则是 false。...Integer 变量(无论是否 new 生成 int 类型变量来比较,结果都是 true 。这因为要比较时, Integer都会自动拆箱成 int ,这样子比较就是在比较数值大小了。

30020

Integerint之间秘密

这个问题问好像有点瞧不起在座各位样子,嗯。。。那么我换种问法好了,毕竟看完这篇文章的人,将来都是会实现不上班这个理想Integerint有什么关联? 嗯?...没事,让我们通过本篇文章一起来回顾下,Integerint之间秘密。 1.概念 int 是我们常说整型,如果没有初始化就使用默认值为0。...对,运行结果是“true”,Integer包装类型数值和int基本数据类型数值进行比较时,会自动拆拆箱为int,然后进行比较,实际上就变为两个int类型数值比较。...3.Integer类型对象int类型值之间可以自动封箱和自动装箱。...4.Integer变量和int变量比较时,Integer类型值会自动拆箱为int再去比,只要两个变量值是相等,则结果为true。

41420

intInteger 区别作用

int 是基本数据类型 Integerint一个包装类(wrapper),他是类不是基本数据类型,他内部其实包含一个int数据 那为什么要用Integer呢,主要是因为面向对象思想,因为Java...Integer(int value) :通过一个int类型构造对象Integer(String s) :通过一个String类型构造对象; 例子代码: Integer i = new Integer...1. byteValue():取得用byte类型表示整数; 2. int compareTo(Integer anotherInteger) :比较两个整数。...5. double doubleValue() :取得该整数双精度表示。 6. boolean equals(Object obj) :比较两个对象。...24. static Integer valueOf(String s, int radix) :将字符串以基数radix要求转换成整数类型。 来自:李晓卡 > 《java语言总结学习》

1.8K10

Java基础--intInteger区别

|Boolean char |Character 二、自动拆箱和自动装箱 Integer n = 100 //编译器自动使用Integer.valueOf(int) 称为自动装箱 int x = n...//编译器自动使用 Integer.intValue() 称为自动拆箱 三、两者之间区别 int是基本类型,Integer是引用数据类型 int默认值是0,Integer默认是null int类型直接存储数值...,Integer需要实例化对象,指向对象地址。...class; 自动装箱和自动拆箱都是在编译期完成(JDK>=1.5); 装箱和拆箱会影响执行效率,且拆箱时可能发生NullPointerException; 包装类型比较必须使用equals();...包装类型提供了大量实用方法; Integer会对-128~127值进行缓存,具体查看jdk源码; 基本类型和引用类型进行比较时会有一个自动拆箱操作。

45910

java integer long 转换_long(Long)intInteger)之间转换

1.将long型转化为int型,这里long型是基础类型: long a = 10; int b = (int)a; 2.将Long型转换为int,这里Long型是包装类型: Long a =...10; int b=a.intValue(); 3.将Long型转换为 Integer,这里Long型是包装类型: Long a = 10;; Integer b=a.intValue();...4.将int型转化为long型,这里int型是基础类型: int a = 10;long b = (int)a; 5.将Integer型转化为long型,这里Integer型是包装类型: int a...(); 总结:这里转化就是要注意Java八种基础数据类型以及八种包装数据类型区别 基本类型和封装类转换 IntInteger: Integer integer = new Integer(int...); Integerint: int i = integer.intValue(); Double转double: double b = Double.doubleValue(); Float转float

4K20

JavaIntegerInteger比较相等

JavaIntegerInteger比较相等 Integer是包装类(引用数据类型),int是基本数据类型, Integer a=12; Integer b=12; //a==b为true; Integer...c=1200; Integer d=1200; //c==d为false; Integer e=new Integer(1); Integer f=new Integer(1); //e==f为false...引用数据类型对比需要用equals()方法对比相等 因Integer存在缓存, 在Integer值不超过-128~127之间==对比为true, 若超过则会new一个Integer对象==结果为false...; 在比较时可使用(a.intValue==b)来比较, 用Integerint对比Intege会自动拆箱变成int类型,所以结果就是int类型对比int类型了 总结:对象之间比较不能用==,包括数字包装类...,Integer,Long,Short,Character,Byte,都存在缓存机制,数字大于对应缓存池就会new一个对象,就不能用==了,若小于缓存池,则包装类不会创建新对象

1.3K40

一篇文章搞明白Integer、new Integer() 和 int 概念区别

基本概念区分 1、Integerint 包装类,int 则是 java 一种基本数据类型 2、Integer 变量必须实例化后才能使用,而int变量不需要 3、Integer 实际是对象引用...,当new一个 Integer时,实际上是生成一个指针指向此对象;而 int 则是直接存储数据值 4、Integer默认值是null,int默认值是0 Integer、new Integer()...和 int 比较 1、两个 new Integer() 变量比较 ,永远是 false 因为new生成是两个对象,其内存地址不同 2、Integer变量 和 new Integer() 变量比较...4、 int 变量 Integer、 new Integer() 比较时,只要两个值是相等,则为true 因为包装类Integer 和 基本数据类型int 比较时,java会自动拆包装为int ,...然后进行比较,实际上就变为两个int变量比较

1.3K11

聊聊面试-intInteger区别

, short, char, int, float, double, long)之一整形类型,大小占用 4 字节,取值范围是正负 2 32(4 * 8)次幂,Java 虽然号称一切都是对象,但是基本数据类型是例外...,然后我们下面可以看看 Integer.valueOf 源码 // Integer.valueOf 源码 public static Integer valueOf(int i) { if...一个对象,但是在考察和调研后发现大多数人使用 Integer 都集中在较小范围,因此 JDK 为 Integer.valueOf 增强了一个缓存机制来改善构造对象性能开销(没错,自动拆箱装箱反编译后也是调用...对象引用都是从缓存中取出,实际上是相同对象,所以结果 true a2 == b2 是因为128已经超过了缓存值范围,Integer 通过 new 构造对象,因为 == 比较对象引用而不是对象值...(考察你对 Java 泛型理解) 对象在内存中结构(对象头 Header,实例数据 Instance Data,对齐填充 Padding) intInteger 区别,这算是典型高频面试题之一

42810

Java中intInteger区别

变量必须实例化后才能使用,而int变量不需要 3、Integer实际是对象引用,当new一个Integer时,实际上是生成一个指针指向此对象;而int则是直接存储数据值 4、Integer默认值是null...,int默认值是0 四、延伸: 关于Integerint比较 1、由于Integer变量实际上是对一个Integer对象引用,所以两个通过new生成Integer变量永远是不相等(因为new...变量和int变量比较时,只要两个变量值是向等,则结果为true(因为包装类Integer和基本数据类型int比较时,java会自动拆包装为int,然后进行比较,实际上就变为两个int变量比较Integer...i = new Integer(50); int j = 50 System.out.print(i == j); //true 3、非new生成Integer变量和new Integer()生成变量比较时...50); Integer j = 50; System.out.print(i == j); //false 4、对于两个非new生成Integer对象,进行比较时,如果两个变量值在区间-128到127

72610

intInteger,longLong区别以及装箱拆箱理解

1,从数据类型看:int和long是基本数据类型,对其赋值属于数值引用,只能对其进行数值运算 Integer和Long是对象类型,既然是对象那就有属性,有方法,这都是基本数据类型不包含. 2,在实际使用中...再者在定义表结构时,如果设主键为自增长型,那只能是int或long.至于其它字段要看情况了,如果不能为null,且是数字型那就设定为基本数据类型, 3,拆箱装箱 Java基本数据类型有 boolean.../true 虽然比较是两个对象,但是jdk5.0后,对-128-127这个范围内整形对象进行了缓存,实际是自动调用了两个IntegervalueOf()方法 Integer c=1000; Integer...(c.equals(d));//true 比较是两个对象int e=1000; System.out.println(e==c);//true c自动拆包,对象c隐式调用了valueOf()方法...(c); System.out.println(g==c);//false 虽然c对象作为入参放大到了g对象构造函数里面,但是默认构造函数参数是int类型,所以c自动拆包了,因此g和c是对象之间比较

88520

Integer、new Integer() 和 int 面试题

基本概念区分: 1、Integerint 包装类,int 则是 java 一种基本数据类型 2、Integer 变量必须实例化后才能使用,而int变量不需要 3、Integer 实际是对象引用...,当new一个 Integer时,实际上是生成一个指针指向此对象;而 int 则是直接存储数据值 4、Integer默认值是null,int默认值是0 Integer、new Integer() 和...int 比较 1、两个 new Integer() 变量比较 ,永远是 false 因为new生成是两个对象,其内存地址不同 Integer i = newInteger(100); Integer...4、 int 变量 Integer、 new Integer() 比较时,只要两个值是相等,则为true 因为包装类Integer 和 基本数据类型int 比较时,java会自动拆包装为int ,...然后进行比较,实际上就变为两个int变量比较

35320

Integer Long 数字类型比较:JavaKotlin细节不同

编程语言还是比较。 我们在数学中,123 == 123 , 直觉上是一目了然。但是到了计算机编程语言中, 问题就显得有点“傻瓜”化了。...值得一提下面的表达式: new Long(10).equals(new Integer(10)) 始终是 false,这确实是一个违背数学常理“坑”。...再比如,在Java中 static void test2() { // Integer自动拆装箱陷阱(整型数-128到127比较问题) out.println...此外,真正基元类型 (float,double) 确定如果两个值相等,也很棘手,要做一个可接受误差幅度内。...): Int Kotlin中,Int类型Long类型之间比较大小: package com.easy.kotlin fun main(args: Array) { test1

2.6K20
领券