java中直接引用地址的问题

publicclassChangeTest{publicstaticvoidmain(String[]args){intb=10;inta=b;System.out.pr... public class ChangeTest {

public static void main(String[] args) {
int b = 10;
int a = b;
System.out.println(a);
b = 20;
System.out.println(a);
}
}

在这个程序中 如何使a 的值随着b的值改变而改变
比如C中只需要:a = *b; 即可
请回答者就解决一下这个程序直接把上面这个程序写出来
如何做到在赋值b = 20时, 输出a时 打印20;
展开
 我来答
典勇嘉谋
2014-10-27 · TA获得超过362个赞
知道小有建树答主
回答量:308
采纳率:100%
帮助的人:149万
展开全部

int是基本类型,不是对象,所以不存在引用地址一说。只有对象才能,但是int对应的对象Integer 没有提供设值方法。所以只有自定义一个类了。

public class Demo2 {
    public static void main(String[] args) {
        Mint b = new Mint(10);
        Mint a = b;
        System.out.println(a);
        b.setValue(11);
        System.out.println(a);
    }
}

class Mint {
    private int value;
    public Mint(int value) {
        this.value = value;
    }
    public int getValue() {
        return value;
    }
    public void setValue(int value) {
        this.value = value;
    }
    @Override
    public String toString() {
        return value + "";
    }
}
没有响应m2
2014-10-27 · TA获得超过8387个赞
知道大有可为答主
回答量:7579
采纳率:33%
帮助的人:3646万
展开全部
java里基本类型变量不能引用地址 只有对象的引用型变量 和数组可以
.不可能...........
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
推荐于2016-07-12
展开全部
只能用引用变量,在java中,基本变量是值传递,如果想实现如上效果,可定义一java类,代码大体如下:
public class Bean{
public Bean(int data){
this.data = data;

}

public int data = 0;

}

public class Main{
public static void main(String[] arg){
Bean a = new Bean(10);
Bean b = a;
System.out.println(a.data);
b.data = 20;
System.out.println(a.data);
}

}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhongtyler
2014-10-27 · TA获得超过4408个赞
知道大有可为答主
回答量:4384
采纳率:79%
帮助的人:1018万
展开全部
只有对象才可以,变量是不行的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
天空飞鸟man
2014-10-27 · 超过12用户采纳过TA的回答
知道答主
回答量:68
采纳率:0%
帮助的人:27.5万
展开全部
你可以把b设置成static的!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式