一、数组的拷贝

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

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

  1. Java菜鸟学习笔记--数组篇(三):二维数组

    定义 //1.二维数组的定义 //2.二维数组的内存空间 //3.不规则数组 package me.array; public class Array2Demo{ public static void ...

  2. 06-01 Java 二维数组格式、二维数组内存图解、二维数组操作

    二维数组格式1 /* 二维数组:就是元素为一维数组的一个数组. 格式1: 数据类型[][] 数组名 = new 数据类型[m][n]; m:表示这个二维数组有多少个一维数组. n:表示每一个一维数组的 ...

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

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

  4. Java编程基础阶段笔记 day06 二维数组

    二维数组 笔记Notes 二维数组 二维数组声明 二维数组静态初始化与二位初始化 二维数组元素赋值与获取 二维数组遍历 二维数组内存解析 打印杨辉三角 Arrays工具类 数组中常见的异常 二维数组 ...

  5. Java基础系列(39)- 二维数组

    多维数组 多维数组可以看成是数组的数组,比如二维数组就是一个特殊的一维数组,其每一个元素都是一个一维数组. 二维数组 int a[][]=new int[2][5]; 解析:以上二维数组a可以看成一个 ...

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

    1.C语言数组的概念 在<更加优美的C语言输出>一节中我们举了一个例子,是输出一个 4×4 的整数矩阵,代码如下: #include <stdio.h> #include &l ...

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

    如题:如何判断一个数组是一维数组或者是二维数组?用什么函数? 判断数量即可 <?php if (count($array) == count($array, 1)) { echo '是一维数组' ...

  8. 【Java】 剑指offer(3) 二维数组中的查找

    本文参考自<剑指offer>一书,代码采用Java语言. 更多:<剑指Offer>Java实现合集 题目 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上 ...

  9. 《java入门第一季》之二维数组

    /* 格式2: 数据类型[][] 数组名 = new 数据类型[m][]; m:表示这个二维数组有多少个一维数组. 列数没有给出,可以动态的给.这一次是一个变化的列数. */ class Array2 ...

  10. 《Java基础知识》一维,二维数组的申明和使用

    为什么要使用数组: 因为不使用数组计算多个变量的时候太繁琐,不利于数据的处理. --------   数组也是一个变量,是存储一组相同类型的变量 声明一个变量就是在内存中划出一块合适的空间 声明一个数 ...

随机推荐

  1. Java 中 VO、PO、DTO、BO、POJO、DAO 之间的区别与解释

    转载:https://www.cnblogs.com/hunmeng/p/11298680.html VO value object:值对象 通常用于业务层之间的数据传递,由new创建,由GC回收. ...

  2. PAT A1034 Head Of Gang

    用并查集分割团伙,判断输出~ #include<bits/stdc++.h> using namespace std; ; },weight[maxn]; unordered_map< ...

  3. 吴裕雄 Bootstrap 前端框架开发——Bootstrap 排版:强调

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  4. 【转】android之在activity中控制另一个activity的UI更新_如何在activity之间传递handler

    来自:http://blog.csdn.net/jason0539/article/details/18055259 遇到一个问题,需要在一个activity中控制另一个acitivity做一些更新, ...

  5. zookeeper和eureka的区别在哪?

    zookeeper和eureka的区别在哪?传统的关系型数据库是ACID(原子性,一致性,独立性,持久性), nosql数据库是CAP(强一致性,可用性,分区容错性),分布式系统只能3进2,三个选两个 ...

  6. vue基础语法摘要

    1. 2. 3. 4. 5. 6. 7.“动态路由”和“编程式路由”参数的接收方式:路由的参数-----页面之间跳转的参数

  7. 还在用SimpleDateFormat?Java8都发布N年了,转LocalDateTime吧

    前言 Java8发布,已有数年之久,但是发现很多人都还是坚持着用SimpleDateFormat和Date进行时间操作.SimpleDateFormat这个类不是线程安全的,在使用的时候稍不注意,就会 ...

  8. Prometheus 学习目录

    Prometheus 介绍 Prometheus 安装 https://www.bookstack.cn/read/prometheus-book/quickstart-why-monitor.md ...

  9. c++存储区域

    来自:https://www.cnblogs.com/simonote/articles/3146038.html 在C++中,内存分成5个区,他们分别是堆.栈.自由存储区.全局/静态存储区和常量存储 ...

  10. Linux centosVMware shell 管道符和作业控制、shell变量、环境变量配置文件

    一.管道符和作业控制 管道符|,用于将前一个指令的输出作为后一个指令的输入 #cat /etc/passwd|wc -l  作业控制:当运行程序时,可以使它暂停(Ctrl+Z组合键),然后使用fg(f ...