Java中int和integer的区别,java中的integer什么意思

  Java中int和integer的区别,java中的integer什么意思

  如何解决写爬虫IP受阻的问题?立即使用。

  java中int和integer的区别

   int是基本数据类型,int变量存储数值;Integer是一个引用数据类型,实际上是一个对象。Integer存储引用对象的地址

  int的默认值为0,Integer的默认值为null;

   int类型直接存储数值,Integer需要实例化对象并指向对象的地址。

  int和Integer所占内存比较:

  整数对象占用更多的内存。Integer是一个对象,需要存储该对象的元数据。但是int是一种原始类型的数据,所以占用的空间比较少。

  非new生成的Integer变量与new Integer()生成的变量比较,结果为false。

  /**

  *将非new生成的整数变量与new生成的整数变量进行比较

  */公共类测试{

  公共静态void main(String[] args) {

  整数i=新整数(200);

  整数j=200

  system . out . print(I==j);//输出:false

  }

  }因为非new生成的Integer变量指向java常量池中的对象,而new Integer()生成的变量指向堆中新创建的对象,所以两个变量在内存中的地址是不一样的。所以输出是假的。

  两个非new生成的Integer对象进行比较

  如果两个变量的值在区间[-128,127]内,比较结果为真;否则,结果为假。

  /**

  *比较两个不是由new生成的整数变量

  */公共类测试{

  公共静态void main(String[] args) {

  整数i1=127

  整数j1=127

  system . out . println(i1==J1);//输出:真

  整数i2=128

  整数j2=128

  system . out . println(I2==J2);//输出:false

  }

  }当}java编译Integer i1=127时,会翻译成Integer i1=Integer.valueOf(127)。

  Integer变量(无论是否是new生成的)与int变量比较

  只要两个变量的值相等,结果就为真。

  /**

  *比较整数变量和整数变量

  */公共类测试{

  公共静态void main(String[] args) {

  整数i1=200

  整数i2=新整数(200);int j=200

  system . out . println(i1==j);//输出:真

  system . out . println(I2==j);//输出:真

  }

  }包装类Integer变量与基本数据类型int变量比较时,会自动将整数解包到int中,然后进行比较。其实比较两个int变量,它们的值是相等的,所以是真的。java中int和integer有什么区别?更多详情请关注我们的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: