Java中如何查看一个引用类型的内存地址?

发布日期:2018-06-08 来源:财富国际在线 阅读:
Java中如何查看一个引用类型的内存地址? 李伟 2小时前 173 引用类型 写了一个关于Java大数求gcd的函数,我知道内置的有,但是我是想问我遇到的问题。 public static BigInteger gcd(BigInteger a, BigInteger b){ if (b == BigInteger.ZERO) { //这里的比较应该是不对的吧? b是一个引用, BigInteger.ZERO也是一个引用,他们两个是不相 等 的,但为什么我试了一些样例都会得到正确结果呢? 不明白,所以想看看他们的内存地址 是不是一样的? 结果想不到什么办法输出? return a; } retur…
0 0
其他回答
你这个问题不是查看内存地址的问题,你说的那种情况应该是调用了BigInteger.valueOf(long);生成的BigInteger对象,下面是这个方法的源代码:
public static BigInteger valueOf(long val) {	// If -MAX_CONSTANT < val < MAX_CONSTANT, return stashed constant	if (val == 0)	    return ZERO;	if (val > 0 && val <= MAX_CONSTANT)	    return posConst[(int) val];	else if (val < 0 && val >= -MAX_CONSTANT)	    return negConst[(int) -val];	return new BigInteger(val);    }
可以看到,当传入的参数为0时,直接返回的就是BigInteger.ZERO,它们能不相等吗?
李伟 1小时前 0条评论
0 0

关于我们 联系我们招聘信息免责申明广告服务 网站地图 百度地图 TAG标签

Copyright@2018-2022 Cfgjzx.Com 财富国际在线 版权所有 All Rights Reserved   
财富国际提供:最新财富资讯、房产资讯、股票资讯、区块链、投资理财、保险导购、健康产品、公私募基金,易经等资讯及服务.