3-4Java数组----数组中涉及到的常见算法(2)--赋值&复制

3.数组的赋值、反转、查找(线性查找、二分法查找)。
使用简单数组

  1. 创建一个名为ArrayTest的类,再main()方法中声明array1和array2两个变量,他们是int【】类型的数组。
  2. 使用大括号{},把array1初始化为8个素数:2,3,5,7,11,13,17,19.
  3. 现实array1的内容。
  4. 赋值array2变量等于arrgy1,修改arrgy2中的偶索引元素,使其等于索引值(如array【0】 = 0,array【2】 = 2)。打印出array1.
    思考:array1和array2的使什么关系?
    答:array1和array2地址值相同,都指向了堆空间的唯一的一个数组实体。
    代码:
public class arraytest2 {
 public static void main(String[] args) {
  int[] array1, array2;
//
  array1 = new int[] { 2, 3, 5, 7, 11, 13, 17, 19 };
//
  // 显示array2的内容
  for (int i = 0; i < array1.length; i++) {
   System.out.print(array1[i] + "\t");
  }
//
  // 赋值array2变量等于array1
  array2 = array1;//不能称作数组的复制
  //实质上是把array1的地址值给了array2,修改array2即修改数据,array1中显示的值也会变。
//
  // 修改arrgy2中的偶索引元素,使其等于索引值(如array【0】 = 0,array【2】 = 2).打印出array1.
  for (int i = 0; i < array2.length; i++) {
   if (i % 2 == 0) {
    array2[i] = i;
   }
  }
  System.out.println();
//
  // 打印array1
  for (int i = 0; i < array1.length; i++) {
   System.out.print(array1[i] + "\t");
  }
 }
}

输出:

2 3 5 7 11 13 17 19 
0 3 2 7 4 13 6 19 

拓展:修改题目,实现array2对array1数组的赋值。
代码:

public class arraytest3 {
 public static void main(String[] args) {
  int[] array1, array2;
//
  array1 = new int[] { 2, 3, 5, 7, 11, 13, 17, 19 };
//
  // 显示array2的内容
  for (int i = 0; i < array1.length; i++) {
   System.out.print(array1[i] + "\t");
  }
//
  // 数组的复制
  array2 = new int[array1.length];
  for (int i = 0; i < array2.length; i++) {
   array2[i] = array1[i];
  }
//
  // 修改arrgy2中的偶索引元素,使其等于索引值(如array【0】 = 0,array【2】 = 2).打印出array1.
  for (int i = 0; i < array2.length; i++) {
   if (i % 2 == 0) {
    array2[i] = i;
   }
  }
  System.out.println();
//
  // 打印array1
  for (int i = 0; i < array1.length; i++) {
   System.out.print(array1[i] + "\t");
  }
  System.out.println();
  // 打印array2
  for (int i = 0; i < array2.length; i++) {
   System.out.print(array2[i] + "\t");
  }
 }
}

输出:

2 3 5 7 11 13 17 19 
2 3 5 7 11 13 17 19 
0 3 2 7 4 13 6 19 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

YY鸟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值