qq_46013408 2021-05-12 12:53 采纳率: 100%
浏览 564
已采纳

关于java中string类重写的tostring

java中string类重写的tostring是return this ,this也是内存地址,不应该打印的也是内存地址吗?为什么是字符串?求大佬解释困惑好长时间了,硬是想不通

public static void main(String[] args) {
    String sb = new String("iphone");
    System.out.println(sb);
    System.out.println(sb.toString());
}
  • 写回答

15条回答 默认 最新

  • CSDN专家-sinJack 2021-05-13 02:00
    关注

    String对象中的toString方法 return this. this表示当前对象的意思。

    String sb = new String("iphone");
    System.out.println(sb);
    System.out.println(sb.toString());

    从这段代码中,也能看出。sb也是String的对象,最后输出的也是字符串。

    所以这没啥问题,String类重写了Object的构造方法,虽然return this,但是默认返回的就是字符串。String是特殊的引用类型。

    如果想要获取String的地址可以通过sb.getBytes()得到。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(14条)
编辑
预览

报告相同问题?

悬赏问题

  • ¥15 盘古气象大模型调用(python)
  • ¥15 传人记程序做的plc 485从机程序该如何写
  • ¥15 已知手指抓握过程中掌指关节、手指各关节和指尖每一帧的坐标,用贝塞尔曲线可以拟合手指抓握的运动轨迹吗?
  • ¥50 libwebsockets 如何添加其他socket事件回调
  • ¥50 实现画布拖拽算子排布,通过flink实现算子编排计算,请提供思路
  • ¥15 esium自定义材质拉伸问题
  • ¥15 cmake+mingw使用<mysqlx/xdevapi.h>报错
  • ¥15 eNSP中防火墙的使用
  • ¥15 关于#mlnet#的问题:mlnet相关请求(语言-c#)
  • ¥15 lvgl7.11怎么做出文字被选中的效果
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部