java version"1.8.0_101"Java(TM) SE RuntimeEnvironment(build1.8.0_101-b13)JavaHotSpot(TM)64-Bit ServerVM(build25.101-b13, mixed mode) 可以看到默认值是5,所以我们不设置的情况下,打印的并不是对象的内存地址 网上很多说,hashCode=4,这里就是对象的内存地址,这个是错的,这里拿到的只是oop的地址,System...
Java中的所有类都继承自Object类,因此我们可以重写toString()方法来自定义打印对象的字符串表示。在这个重写的方法中,我们将使用super.toString()来获取对象的内存地址。 @OverridepublicStringtoString(){return"Person{"+"name='"+name+'\''+", age="+age+", address="+super.toString()+'}';} 1. 2. 3...
在Java中,要打印对象的内存地址,可以使用System.identityHashCode()方法。这个方法返回对象的哈希码值,通常是对象的内存地址转换成整数。虽然不是直接返回内存地址,但通常足够用来唯一标识对象的地址。下面是一个示例代码: publicclassPrintMemoryAddress{publicstaticvoidmain(String[]args){Stringstr="Hello World";inthas...
java中的Object[]对象,在日志中打印的时候是内存地址,而不是详细信息,如何让他打印详细信息呀? swnuv 3.9k709301505 发布于 2021-12-02 Object[] params = { new Integer(nodeId),"服务监督中心" }; log.info("sql:"+sql+"--sqlID:"+sqlID+"--param:"+params.toString()); 控制台打印这样的 sql...
java中的Object[]对象,在日志中打印的时候是内存地址,而不是详细信息,如何让他打印详细信息呀? swnuv 3.9k668981494 发布于 2021-12-02 Object[] params = { new Integer(nodeId),"服务监督中心" }; log.info("sql:"+sql+"--sqlID:"+sqlID+"--param:"+params.toString()); 控制台打印这样的 ...