Java连载68-数组的拷贝、二维数组

一、数组的拷贝

函数arraycopy(),参数为:源数组、源数组的开始下标、目标数组、目标数组的开始下标、拷贝长度

package com.bjpowernode.java_learning;

?

public class D68_1_CopyOfArrays {

  public static void main(String[] args) {

    int[] a1 = {2,3,4,5,6,7,8};

    int[] a2 = {10,11,12,13,14,15,16};

    System.arraycopy(a1,2,a2,3,3);

    for(int i=0;i<a2.length;i++) {

      System.out.println(a2[i]);

    }

  }

}

二、二维数组初始化和遍历

1.二维数组的特点

(1)二维数组是一个特殊的一维数组

(2)特殊的一维数组,特殊在这个一维数组中每一个元素都是一维数组


package com.bjpowernode.java_learning;

?

public class D68_2_TwoDimetionArrays {

  public static void main(String[] args) {

    int[][] a = {{1,2,3},{4,5,6},{7,8,9,10}};

    //以上这个数组有多少个一维数组

    System.out.println(a.length+"个一维数组");

    //获取第一个一维数组的第一个元素

    int[] a0 = a[0];

    int a00 = a0[0];

    System.out.println(a00);

    System.out.println(a[0][0]);

    //获取最后一个一维数组的最后一个元素

    System.out.println(a[a.length-1][a[a.length-1].length-1]);

    //遍历二维数组

    System.out.println("=============================");

    for(int i=0;i<a.length;i++) {

      for(int j=0;j<a[i].length;j++) {

        System.out.println(a[i][j]);

      }

    }

  }

?

}

三、二维数组的动态初始化

package com.bjpowernode.java_learning;

?

public class D68_3_TwoDimentionInitial {

  public static void main(String[] args) {

    //3个一维数组

    //每个一维数组中有4个元素

    int[][] a = new int[2][2];

    //遍历

    for(int i=0;i<a.length;i++) {

      for(int j=0;j<a[i].length;j++) {

        System.out.println(a[i][j]);

      }

    }

    m1(new int[][] {{1,2,3},{4,5,6}});

  }

  public static void m1(int[][] a) {

    for(int i=0;i<a.length;i++) {

      for(int j=0;j<a[i].length;j++) {

        System.out.print(a[i][j]+" ");

      }

      System.out.println();

    }

  }

?

}

?

?

四、源码:

D68_1_CopyOfArrays.java

D68_2_TwoDimetionArrays.java

D68_3_TwoDimentionInitial.java

https://github.com/ruigege66/Java/blob/master/D68_1_CopyOfArrays.java

https://github.com/ruigege66/Java/blob/master/D68_2_TwoDimetionArrays.java

https://github.com/ruigege66/Java/blob/master/D68_3_TwoDimentionInitial.java

2.CSDN:https://blog.csdn.net/weixin_44630050

3.博客园:https://www.cnblogs.com/ruigege0000/

4.欢迎关注微信公众号:傅里叶变换,个人公众号,仅用于学习交流,后台回复”礼包“,获取大数据学习资料

原文地址:https://www.cnblogs.com/ruigege0000/p/12150996.html

时间: 2024-11-06 15:13:54

Java连载68-数组的拷贝、二维数组的相关文章

“全栈2019”Java第三十一章:二维数组和多维数组详解

难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第三十一章:二维数组和多维数组详解 下一章 "全栈2019"Java第三十二章:增强for循环Foreach语法 学习小组 加入同步学习小组,共同交流与进步. 方式一:关注头条号Gorhaf,私信"Java学习小组". 方式二:关注公众号Gorhaf,回复"Ja

C语言数组:C语言数组定义、二维数组、动态数组、字符串数组

1.C语言数组的概念 在<更加优美的C语言输出>一节中我们举了一个例子,是输出一个 4×4 的整数矩阵,代码如下: #include <stdio.h> #include <stdlib.h> int main() { int a1=20, a2=345, a3=700, a4=22; int b1=56720, b2=9999, b3=20098, b4=2; int c1=233, c2=205, c3=1, c4=6666; int d1=34, d2=0, d3

数组(随机生成一维数组),二维数组的概念和题目设计(利用二维数组 :任意给定分数去计算科目和人均平均分)

1 //数组间的关系arr[]中的数字为几,[]内就有几个数 2 //{ }内的数是从0开始,如需要打印应从0开数 3 如{2,6,9,8,7}打印arr[4]就是7 4 #include <stdio.h> 5 #include <stdlib.h> 6 int main() 7 { 8 int arr[] = { 1,2,3,4,8}; 9 10 printf("%d\n", arr[3]); 11 12 system("pause");

数组指针与二维数组的寻址

引例:已知如下程序 1 #include <stdio.h> 2 main() 3 { 4 int x[3][4] = {1,3,5,7,9,11,2,4,6,8,10,12} ; 5 int (*p)[4] = x, k = 1, m, n = 0; 6 for(m=0; m < 2; m++) 7 n += *(*(p+m)+k); 8 printf("%d\n",n); 9 } 试写出程序的输出值.(虽然我很讨厌做这种笔头功夫的题,我也坚信编程语言是在实践中练出

关于理解指针数组,数组指针,数组名,二维数组的一些技巧。

/*************关于数组名***************/ int a[3] = {1, 2, 3} 1.数组名代表数组第一个元素的地址,注意,不是数组地址(虽然值相等),是数组第一个元素地址,a 等同于 &a[0]; a+1是第二个元素的地址.比第一个元素地址a(或者&a[0])超出了一个整型指针的大小,在这里是4个字节(byte) cout << a << endl;会输出数组第一个元素地址. 2.取址符号&. &a是数组的地址,注意

把一维数组转换成二维数组

有一个一维数组,想把它变成m*n形式的二位数组, $arr = array(....); // 一维数组 $m = ceil(count($arr)/n); $array = array(); for ($i = 0, $j = 0; $i < $m; $i++) { for ($k = 0; $k < n; $k++) { $temp = $arr[$j++]; if($temp) $array[$i][$k] = $temp; } } 把一维数组转换成二维数组

PHP如何判断一个数组是一维数组或者是二维数组?用什么函数?

如题:如何判断一个数组是一维数组或者是二维数组?用什么函数? 判断数量即可 <?php if (count($array) == count($array, 1)) { echo '是一维数组'; } else { echo '不是一维数组'; } PHP手册: int count ( mixed $var [, int $mode ] )  --  计算数组中的单元数目或对象中的属性个数  如果可选的 mode 参数设为 COUNT_RECURSIVE(或 1),count() 将递归地对数组

C++指针数组、数组指针、数组名及二维数组技巧汇总

这篇文章主要介绍了C++指针数组.数组指针.数组名及二维数组技巧汇总,对于深入理解C++数组与指针来说非常重要,需要的朋友可以参考下. 本文较为详细的分析了关于理解C++指针数组,数组指针,数组名,二维数组的一些技巧.是比较重要的概念,相信对于大家的C++程序设计有一定的帮助作用. 一.关于数组名 假设有数组: 1 int a[3] = {1, 2, 3} 1.数组名代表数组第一个元素的地址,注意,不是数组地址(虽然值相等),是数组第一个元素地址,a 等同于 &a[0]; a+1是第二个元素的地

将一维数组转化成二维数组

<nz-table #colSpanTable [nzData]="temp" nzBordered> <tbody> <ng-container *ngFor="let row of temp;let i = index"> <tr> <td *ngFor="let title of row">{{title.AreaCodesName}}</td> </tr>

Java_Day06(java 基础下与面向对象,二维数组与面向对象基础)

1:二维数组(理解) (1)元素是一维数组的数组. (2)格式: A:数据类型[][] 数组名 = new 数据类型[m][n]; m表示这个二维数组有多少个一维数组 n表示每一个一维数组的元素个数 以下格式也可以表示二维数组:不推荐这样去使用 数据类型 数组名[][] = new 数据类型[m][n]; 数据类型[] 数组名[] = new 数据类型[m][n]; B:数据类型[][] 数组名 = new 数据类型[m][]; C:数据类型[][] 数组名 = new 数据类型[][]{{..