鱼C论坛

 找回密码
 立即注册
查看: 610|回复: 0

[学习笔记] JAVA练习:4.数组1.2——遍历与复制

[复制链接]
发表于 2023-3-5 19:14:27 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 划句顾 于 2023-3-5 19:47 编辑


实验要求:1.编写一个java应用程序
                 2.输出数组a的全部元素,并将数组a的全部或部分元素复制到其他数组中
                 3.改变其他数组的元素的值,再输出数组a的全部元素。

本次实验需要调用Arrays类的三个方法:
1.遍历数组
public static String toString(int[] a)
        可以得到参数指定的一维数组。
2.复制数组
①public static double[] copyOf(double[] original,int newLength)
        如果新数组长度大于原数组长度,copyOf()方法返回的新数组的第newLength索引后的元素取默认值即0;
②public static double[] copyOfRange(double[] original,int from,int to)
        将索引from至to-1的元素复制到一个新数组中,并返回这个新数组。

运行结果如下:
结果1.jpg
  1. package array;
  2. import java.util.Arrays;    //这个要记得写
  3. public class CopyArray {
  4.         public static void main(String[] args) {
  5.                 int [] a = {1,2,3,4,500,600,700,800};
  6.                 int [] b,c,d;   // 等价写法: int a[],b[],c[];
  7.                 System.out.println("a="+Arrays.toString(a));

  8.                 b = Arrays.copyOf(a,a.length);
  9.                 System.out.println("b="+Arrays.toString(b));

  10.                 c = Arrays.copyOf(a,4);
  11.                 System.out.println("c="+Arrays.toString(c));

  12.                 d = Arrays.copyOfRange(a,4,a.length);
  13.                 System.out.println("d="+Arrays.toString(d));

  14.                 c[c.length-1]=-100;
  15.                 d[d.length-1]=-200;

  16.                 System.out.println("a="+Arrays.toString(a));
  17.                 System.out.println();
  18.                 System.out.println("修改后的c为"+Arrays.toString(c));
  19.                 System.out.println("修改后的d为"+Arrays.toString(d));
  20.         }
  21. }
复制代码


                               
登录/注册后可看大图

在c[c.length-1]=-100;之后增加语句:
        int [] tom = Arrays.copyOf(c,6);
        System.out.println("tom="+Arrays.toString(tom));

运行结果如下:
结果2.jpg
  1. package array;

  2. import java.util.Arrays;

  3. public class CopyArray {
  4.         public static void main(String[] args) {
  5.                 int [] a = {1,2,3,4,500,600,700,800};
  6.                 int [] b,c,d;   // 等价写法: int a[],b[],c[];
  7.                 System.out.println("a="+Arrays.toString(a));

  8.                 b = Arrays.copyOf(a,a.length);
  9.                 System.out.println("b="+Arrays.toString(b));

  10.                 c = Arrays.copyOf(a,4);
  11.                 System.out.println("c="+Arrays.toString(c));

  12.                 d = Arrays.copyOfRange(a,4,a.length);
  13.                 System.out.println("d="+Arrays.toString(d));

  14.                 c[c.length-1]=-100;
  15.         //新加的代码如下:
  16.                 int [] tom = Arrays.copyOf(c,6);
  17.                 System.out.println("tom="+Arrays.toString(tom));
  18.                 System.out.println();
  19.                 d[d.length-1]=-200;

  20.                 System.out.println("a="+Arrays.toString(a));

  21.                 System.out.println();
  22.                 System.out.println("修改后的c为"+Arrays.toString(c));
  23.                 System.out.println("修改后的d为"+Arrays.toString(d));
  24.         }
  25. }
复制代码


                               
登录/注册后可看大图

在System.out.println("a="+Arrays.toString(a)); 之后增加语句:
        int [] jerry = Arrays.copyOfRange(d,1,8);
        System.out.println("jerry="+Arrays.toString(jerry));

运行结果如下:
结果3.jpg
  1. package array;

  2. import java.util.Arrays;

  3. public class CopyArray {
  4.         public static void main(String[] args) {
  5.                 int [] a = {1,2,3,4,500,600,700,800};
  6.                 int [] b,c,d;   // 等价写法: int a[],b[],c[];
  7.                 System.out.println("a="+Arrays.toString(a));

  8.                 b = Arrays.copyOf(a,a.length);
  9.                 System.out.println("b="+Arrays.toString(b));

  10.                 c = Arrays.copyOf(a,4);
  11.                 System.out.println("c="+Arrays.toString(c));

  12.                 d = Arrays.copyOfRange(a,4,a.length);
  13.                 System.out.println("d="+Arrays.toString(d));

  14.                 c[c.length-1]=-100;
  15.                 d[d.length-1]=-200;

  16.                 System.out.println("a="+Arrays.toString(a));
  17.         //新加的代码如下:
  18.                 int [] jerry = Arrays.copyOfRange(d,1,8);
  19.                 System.out.println("jerry="+Arrays.toString(jerry));

  20.                 System.out.println();
  21.                 System.out.println("修改后的c为"+Arrays.toString(c));
  22.                 System.out.println("修改后的d为"+Arrays.toString(d));
  23.         }
  24. }
复制代码

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-27 17:05

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表