我是靠谱客的博主 狂野康乃馨,最近开发中收集的这篇文章主要介绍JAVA Integer赋值比较,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

  • Integer介绍

Integer是int的包装类,继承Number类另实现Comparable接口,其取值范围为:-2147483648~2147483647

  • 赋值操作
	Integer newInt = new Integer(10);
//自动装箱操作,编译后class文件中为:Integer num = Integer.valueOf(10);
Integer num = 10;
//num.intValue()为解包操作
int intNum = num.intValue();
/**
* 输出结果为true----false----true,原因:
* 1、 Integer为引用类型,引用类型栈中变量表示一个地址指向堆中的一片内存空间
* 2、 newInt.equals(num)为true是因为Integer重写了equals方法,equals方法中实际是值比较
* 3、(newInt == num)为false因为两个变量不指向同一片内存
* 4、(intNum==num)结果为true是因为intNum是基本数据类型,值直接存在栈中,两者比较的是值
*/
System.out.println(newInt.equals(num)+"----"+(newInt == num)+"----"+(intNum==num));

private final int value;
public boolean equals(Object obj) {
if (obj instanceof Integer) {
//将对象强制转换为Integer类型,然后自动拆箱进行==比较
return value == ((Integer)obj).intValue();
}
return false;
}
  • 构造函数
	public Integer(int value) {
//参数为int 直接赋值
this.value = value;
}
public Integer(String s) throws NumberFormatException {
//参数为String的情况下调用paseInt()方法进行赋值,10表示为按10进制转换
this.value = parseInt(s, 10);
}

最后

以上就是狂野康乃馨为你收集整理的JAVA Integer赋值比较的全部内容,希望文章能够帮你解决JAVA Integer赋值比较所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(63)

评论列表共有 0 条评论

立即
投稿
返回
顶部