| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 932 人关注过本帖
标题:请帮我看看这到题
只看楼主 加入收藏
65063251
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2005-4-1
收藏
 问题点数:0 回复次数:5 
请帮我看看这到题
public class f
{
 public static void add3(Integer i)
 {
  int val=i.intValue();
  val+=3;
  i=new Integer(val);
 
  
  
 }
 public static void main(String[] args)
 {
  Integer i=new Integer(0);
  add3(i);
  System.out.println(i.intValue());
  
 }
}
为什么运行结果是0呢? 我试了一下 把方法add3改成:
public static Integer add3(Integer i)
 {
  int val=i.intValue();
  val+=3;
  i=new Integer(val);
  return i;
  
  
 }

 public static int add3(Integer i)
 {
  int val=i.intValue();
  val+=3;
  i=new Integer(val);
  return val;
  
  
 }
结果都是0 是什么原因呢 有人知道 能详细说明一下吗? 谢谢
搜索更多相关主题的帖子: Integer val public int static 
2005-05-23 15:53
kuixingzai
Rank: 1
等 级:新手上路
帖 子:42
专家分:0
注 册:2005-5-16
收藏
得分:0 
主方法i值不确定

菜鸟飞,菜鸟飞,菜鸟高高飞!
2005-05-23 16:08
65063251
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2005-4-1
收藏
得分:0 
以下是引用kuixingzai在2005-5-23 16:08:01的发言: 主方法i值不确定
是什么意思? 能说的详细点吗
2005-05-23 17:31
tempnetbar
Rank: 2
等 级:新手上路
威 望:4
帖 子:582
专家分:4
注 册:2004-5-5
收藏
得分:0 
Java里变量传递都是传值的,不是传递地址的,你可以试试在add3方法中设置i=null;这样对i丝毫没有影响。
看一下这里的帖子[URL=http://forum.]http://forum.[/URL]

相信勤能补拙! 喜欢用好用的就永远学不到有用的。
2005-05-26 17:51
Doctor
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2005-5-17
收藏
得分:0 
变量i传递的是地址,不传递数值,如果要输出3,正确的程序应该如下:
public class f
{
  public static Integer  add(Integer i)//将void改为Integer(返回值类型)
    {
      int val=i.intValue();
      val+=3;
      return new Integer(val);
    }//add
 public static void main(String[] args)
   {
     Integer i=new Integer(0);
     i=add(i);//将add(i)改了
     System.out.println(i);
  
   }//main
}//class f

我本将心向明月,奈何明月照沟渠。 知我者谓我心忧,不知我者谓我何求?
2005-06-08 12:48
Doctor
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2005-5-17
收藏
得分:0 
Sorry,说错了,变量i是按值传递,而非按地址传!

我本将心向明月,奈何明月照沟渠。 知我者谓我心忧,不知我者谓我何求?
2005-06-08 12:51
快速回复:请帮我看看这到题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015309 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved