1. 数组, 数组翻转

  1. Java的数组,在程序运行期间,长度是不能改变的。但是可以从新new一个数组,并让这个变量保存新数组的地址。

  2. 一个数组的内存图:


    数组的内存图.png
  3. 空指针异常:NullPointerException

    • 数组在声明后,如果不使用new进行初始化,是不能使用的
    • 数组声明后可以赋值为null,所有的引用类型初始值都是null。
    • 但是null代表为空,即没有值,所以如果访问值为null的数组中的元素,也会出现空指针异常
  4. 数组反转思路:

    1. 1234,交换为4321

    2. 03交换,12交换

    3. 定义两个索引,一个从0开始,一个从length-1开始

    4. min值不断增大,max值不断减小

    5. 当min>max时,证明交换完毕,停止循环

       // 数组翻转
       int[] array1 = new int[] {1, 2, 3, 4, 5, 6, 7};
       printArray(array1);
       for (int min = 0, max = array1.length - 1; min < max; min++, max--) {
           int temp = array1[min];
           array1[min] = array1[max];
           array1[max] = temp;
       }
       printArray(array1);
      
  5. 数组作为参数:

    1. public static void printArray(int[] array)
    2. 数组作为参数传入,实际上传入的是数组的地址值,方法内部可以通过这个地址找到数组中的元素
  6. 数组作为返回值:

    1. public static int[] sum(int a, int b)
    2. 可以在方法内部创建一个数组,并且return这个数组,外界接受时也使用数组接受
    3. 返回的其实也是数组的地址值,然后用新的变量去保存这个数组的地址
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第四天 数组【悟空教程】 第04天 Java基础 第1章数组 1.1数组概念 软件的基本功能是处理数据,而在处理数...
    Java帮帮阅读 5,505评论 0 9
  • 1.定义:数组是一种容器,可以存放多个数据值 2.特点: 1.数组是一种引用类型。 2.数组当中的...
    Jhxia阅读 3,003评论 0 1
  • pyspark.sql模块 模块上下文 Spark SQL和DataFrames的重要类: pyspark.sql...
    mpro阅读 13,143评论 0 13
  • DAY 05 1、 public classArrayDemo { public static void mai...
    周书达阅读 4,046评论 0 0
  • 英语作业 1.P6拼词练习。 2.完成一起作业。 数学作业 1.完成小卷,已经发给孩子.提醒孩子先写班级姓名。 2...
    天隆超市阅读 3,118评论 0 0