java数组赋值的问题?

17md69uz
  • 5
新手上路,请多包涵

小白看视频学习,遇到一个问题表示不懂。

int[] arr = {20,18,96,38,118};
int max = arr[0];
max = 100; //这里为何无法改变第一个元素的值,而arr[0] = 100; 却可以修改
System.out.println(arr[0]); 
回复
阅读 766
2 个回答
_usw
  • 3.7k
✓ 已被采纳

max不是指向第零个元素的指针,所以动不了数组。max就是一个普普通通的变量

没记错的话 int* max = &arr[0] 好像是可以动数组的

======分割线======

对不起看错了,Java好像没有这个用法,请忽略

int max = arr[0] 是把 “数组的第0个元素的 复制max”,不是 “max 数组的第0个元素”

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏