笔记6-数组

数组

数组的两种初始化方式:

动态初始化:由我们来设置数组的元素的个数,系统决定数组的初始值

数组元素类型[] 数组名=new 数组元素类型[length];

举例int[] ages = new int[9];

静态初始化:由系统决数组的元素个数,由我们来决定数组的初始值

数组元素类型[] 数组名=new 数组元素类型[] {元素的值1……};

举例int[] nums = new int[]{1,3,5,7,9};

数组的简写:

原始数组:int[] nums = new int[]{1,3,5,7,9};

简化后:int[] nums={1,3,5,7,9};

声明数组:int[] nums

初始化:nums = new int[] {1,3,5,7,9};

注意:简写的初始化方式必须在声明后立即初始化

两个新的关键字:

Null:表示没有引用任何空间

new:表示在堆中开辟新空间

Length :是属性,不是方法,表示数组中int类型中的个数,不是关键字

索引:从0开始,一一对应数组元素的值,总个数为数组名.length-1

索引范围:【0数组名.length-1

注意:若堆中的空间未被引用,则等待垃圾回收器回收

    简写必须在声明后立即初始化后

常见的异常:

NullPointerException:空指针异常/引用异常

ArrayIndexOutOfBoundsException:数组索引越界异常

数组的基本操作:

获取元素:元素类型变量=数组名[索引index];

设置元素:数组名[索引index]=;

遍历元素:遍历即迭代,将数组的元素全部输出,建议使用for循环

举例:

class H4

{

   publicstatic void main(String[] args)

   {

   int[]ages = new int[9]; //定义动态数组

   System.out.println("HelloWorld!");

   System.out.println(ages.length);   //输出数组的元素的个数

   int[]nums = new int[] {1,3,5,7,9};      //定义静态数组

   System.out.println("数组的值"+ nums[3]);  //输出数组的第四个数的值

   nums[3]=199; //更改元素的值使得第四个元素由7改为199

   System.out.println("数组改变后的值"+ nums[3]);

   for(int index = 0; index < nums.length;index ++ ) //遍历所有的元素

   {  //新建一个int型的index数据,使得其值小于数组的行数,并自加一

      System.out.println(nums[index]);   //打印所有的元素的值

   }

   nums= null;

   System.out.println(nums[3]);

   }

}

比较数组的元素值的大小:

class H3

{  //要求:求出一组数组中元素的最大值/最小值

   staticint getMax(int[] nums)   //2 新建一个方法命名为getMax,参数为int[] nums,即将数组的元素传递到此处

   {  int max = nums[0]; //4假设第一个元素是最大值

      for(int index = 0;index < nums.length ;index++ )  //3 index:代表

      {     //nums.length:代表数组元素的个数

          if(nums[index] > max) //5 如果下一个数组的元素大于上一个最大值

          {

             max= nums[index]; //6 就把就把下一个数组的元素赋给最大值

          }

      }

          returnmax;     //7返回最大值

   }

   //最小值的输出

   staticint getMin(int[] nums)

   {  int min = nums[0];

      for(int index = 0;index<nums.length ;index++ )

      {

      if(nums[index]<min)

          {

          min= nums[index];

          }

      }

      returnmin;

   }

   publicstatic void main(String[] args)

   {

      intnums[] =new int[]{11,12,13,-14,15,16,38,33,49,55,32};   //1 新建一个静态初始化数组,命名为nums,并定义数组元素

      intsum = H3.getMax(nums);   //8 将参数返回值赋给sum

      System.out.println(sum); //9 输出最大的值

      System.out.println(H3.getMax(nums));  //结果和上一步相同

      System.out.println(H3.getMin(nums));  //输出最小的值

//按格式打印数组元素

   Stringarr[] ={"A","B","C","D","E"};

   H3.pointArray(arr);

   }

   staticvoid pointArray(String[] arr)

   {

   Stringret = "[";

   for(int index = 0;index <arr.length ;index++ )

   {

      ret= ret + arr[index];  //如果当前index不是最后一个索引,则多拼接一个“,

      if(index !=arr.length-1)

      {

          ret= ret +", ";

      }

   }

   ret= ret + "]";

   System.out.println(ret);

   }

}

猜你喜欢

转载自blog.csdn.net/qq_38551043/article/details/78171014