java小问题为什么结果是0而不是1???

importorg.junit.Test;publicclasshg{@Testpublicvoidtest1(){int[]arr=newint[5];//arr[0]... import org.junit.Test;
public class hg {
@Test
public void test1()
{
int[] arr = new int[5];//arr[0]=0
for(@SuppressWarnings("unused")
int num : arr)
{
num = 1;
}
System.out.println(arr[0]);
}
}
为什么结果是0而不是1???
展开
 我来答
aoisora_blue
2013-12-01 · TA获得超过412个赞
知道小有建树答主
回答量:583
采纳率:0%
帮助的人:363万
展开全部
这样写只是简单的将arr[i]依次赋值给变量num,改变变量num的值并不会改变对应的arr[i]的值
lkiarest
2013-12-01 · TA获得超过543个赞
知道小有建树答主
回答量:761
采纳率:100%
帮助的人:405万
展开全部
num是int型的局部变量,这段代码并不是给数组引用赋值,
只是改变了局部变量的值
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友0468555
2013-12-01 · TA获得超过2617个赞
知道答主
回答量:963
采纳率:0%
帮助的人:175万
展开全部
圣诞节咖啡和枯松倒涧壑飞
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
mpkuaiile
2013-12-01 · 超过15用户采纳过TA的回答
知道答主
回答量:62
采纳率:0%
帮助的人:38.5万
展开全部
在for循环里面赋值相当于是一个局部变量并不会改变arr[0]初始的值0
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式