weixin_43857493
踏破九重天阙
采纳率100%
2019-08-02 11:56

Java可不可以把字符串当作变量处理?

已采纳

例如:String a="aaaa";
String b="a";
String c=b;

可不可得到c="aaaa"呢?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

8条回答

  • caozhy 回答这么多问题就耍赖把我的积分一笔勾销了 2年前

    普通变量不可以,成员变量(放在类的定义里面)可以用反射获取/设置。

    点赞 评论 复制链接分享
  • yyjjttww yyjjttww 2年前

    值和变量的定义方式不一样。

    点赞 评论 复制链接分享
  • d592571519 C君. 2年前

    把变量包裹在对象里,然后使用反射获取赋值。

    点赞 评论 复制链接分享
  • TinaMooN TinaMooN 2年前

    变量是存储在线程栈的局部变量表中,字符串会在常量池 或者堆中存储这个具体看你创建对象的方式。变量只是保存了对象的地址,相当于是个指针,你把a代表
    的地址给了c说明c也指向了“aaaa”这个是不矛盾的。(对象也有可能在线程工作内存栈中,虚拟机加了逃逸分析后,当这个对象不能进行逃逸的话有可能分配在栈中)。

    点赞 评论 复制链接分享
  • cccfire 杨园亮 2年前

    图片说明

    点赞 评论 复制链接分享
  • qq_39019765 打杂的程序员 2年前

    你要是 String c= a 不就得到了 c="aaaa"

    点赞 评论 复制链接分享
  • jerry11112 光哥_帅 2年前

    你这个不可以,因为String b="a",这个a不是一个变量了,他是一个值
    String a="aaaa" 表示的是a指向了存有内容为aaaa的地址空间 ,这个地址空间我们假设为RRR
    String b="a" 表示的是b指向了存有内容为a的地址空间 ,,这个地址空间我们假设为qqq
    String c=b 表示的是c和b指向了同一个地址空间,这个地址空间为qqq,内容为a
    里面可能有些专业术语不准确,还望包涵

    点赞 评论 复制链接分享
  • qq_38740863 strong_mz 2年前

    没看懂你要问啥,字符串可以当作变量处理

    点赞 评论 复制链接分享