热点新闻
Java 数组
2023-07-26 18:15  浏览:1157  搜索引擎搜索“早勤网”
温馨提示:信息一旦丢失不一定找得到,请务必收藏信息以备急用!本站所有信息均是注册会员发布如遇到侵权请联系文章中的联系方式或客服删除!
联系我时,请说明是在早勤网看到的信息,谢谢。
展会发布 展会网站大全 报名观展合作 软文发布

Java 数组

一、什么是数组

定义:数组是具有相同类型且按一定次序排列的一组变量的集合体。

什么是数组元素

构成一个数组的每一个数据称为数组元素。

什么是数组下标

下标是数组元素在数组中的位置。(数组下标从0开始,依次加1)

什么是数组的大小(长度)

数组中元素的个数就是数组的大小(长度)

获取数组长度的方法:

数组名.length

数组长度是在为数组分配内存的时候确定的,数组长度一旦确定,长度不可更改。

二、怎么使用数组

1.定义数组

Java中定义数组有两种语法格式

int score[]; int[] score;

2.为数组元素分配内存

int[] score = new int[];

3.为数组元素初始化

数组声明并为数组分配空间后,必须为数组元素初始化(初始化就是第一次赋值)后,才能使用数组元素 。

score[0] = 100; score[1] = 89; score[2] = 97;

4.使用数组

使用数组通常都是求数组的最大最小值,求和,求平均值,遍历数组元素,数组元素排序,数组中元素的数量等操作。

案例如下:

int[] score = new int[]{100,89,97,78,88}; int max = score[0]; for(int i = 1;i < score.length;i++){ if(score[i]>max){ max = score[i]; } } System.out.println("最大值为"+max);

三、常见问题

(1)下标越界异常

系统提示运行改程序时发生了java.lang,ArrayindexOutOfBoundsException异常,这个异常表示数组的下标越界了,数组下标的界限是介于0到数组长度减一范围内的整数,数组下标超出这个范围的值就会发生下标越界异常。

int[] score = new int[]{98,87,76,88,79}; System.out.println("第5个学生的成绩是"+score[5])//下标越界

(2)没有分配内存空间

int[] score = null;//没有分配内存空间 System.out.println("第1个学生的成绩是"+score[0])

系统提示运行该程序时发生了java.long.NullPointerException异常,这个异常表示空指针异常。这个程序只为数组名称在栈中分配内存,但是并没有在堆中为数组元素分配内存。当输出score[0]时,表示输出数组score指向内存空间中的第一个元素,但是数组score并没有指向任何内存空间,因此score是空指向(即score的值是null),因此JVM抛出空指针异常。解决办法是为数组元素分配内存,并让数组score指向到数组元素。

(3)语法错误

一些常见的语法错误:

//等号左边的中括号不允许写长度 int array1[3]=new int[]{1,2,3}; //直接为数组元素初始化时不允许指定数组长度 int array2 = new int[3]{1,2,3} //直接初始化数组元素的代码必须写在一起 int array3; array3 = {1,2,3}

四、二维数组

Java中定义和操作多维数组的语法和一维数组类似。使用二维数组同一维数组的步骤。1.定义数组。2.为数组元素分配内存。3.数组元素初始化。4.使用数组

(1)定义二维数组

int[][] s; int s[][];

(2)为二维数组元素分配内存

int [][]s; s= new int[3][3];

(3)二维数组初始化

int [][]score = new int[][]{ {11,22,33}, {21,32,41}, {31,32,33} } //或者 int [][]score = { {11,22,33}, {21,32,41}, {31,32,33} }

(4)二维数组的遍历

二维数组的遍历通常使用双重for循环。

五、Arrays类

java.util.Arrays 类能方便地操作数组,它提供的所有方法都是静态的。

具有以下功能:

  • 给数组赋值:通过 fill 方法。
  • 对数组排序:通过 sort 方法,按升序。
  • 比较数组:通过 equals 方法比较数组中元素值是否相等。
  • 查找数组元素:通过 binarySearch 方法能对排序好的数组进行二分查找法操作。
  • 将数组赋值成一个长度为设定值的新数组:通过copyOf()方法把数组复制成一个长度为设定值的型数组。
  • 将数组转换成字符串:通过toString方法将一个数组转换为一个字符串。
发布人:e3b1****    IP:125.64.25.***     举报/删稿
展会推荐
让朕来说2句
评论
收藏
点赞
转发