初见JAVA-数组-初级进化06

初见JAVA-数组-初级进化06

数组定义

相同类型数据的有序集合

有先后顺序,可以用下标访问

数组声明

dataType[] arrayRefVar

创建数组

dataType[] arrayRefVar = new dataType[arraySize]

数据访问

由索引访问,从0开始

获取数组长度

arrays.length

数组基本特点

长度是确定的,一旦确定,大小不可以改变

元素必须是相同类型,可以是基本类型/引用类型

数组变量是引用对象,数组可以看成对象,每个元素相当对象的成员变量

Java对象在堆中,所以数组对象本身在堆中

Java内存分析

存放new的对象和数组

可以被所有线程共享,不会存放别的对象引用

存放基本变量类型(包含这个基本类型的具体数值)

引用对象的变脸(放引用在堆里的具体地址)

方法区

被所有线程共享

包含所有的class和static变量

1.声明数组:

int[] array = null;

2.创建数组

array = new int[10];

3.给数组元素中赋值

array[0]=1

初始化

静态初始化:创建并赋值

动态初始化

数组的默认初始化:数组是引用类型,元素等于类的示例

异常

数组下标越界:

ArrayIndexOutofBoundsException

使用

For-each循环

数组作为方法入参

数组作为返回值

多维数组

int[][] arrayB = new int[2][4];

Arrays类

数组的工具类

其中的方法都是static修饰的静态方法,可以用类名直接调用

常用功能:

  • 给数组赋值:fill
  • 对数组排序:sort (升序)
  • 对比数组:equals
  • 查找数组元素:binarySearch方法对排序好的数组进行二分查找法操作

冒泡排序

(8种排序算法)排序算法

O(n2)

稀疏数组

介绍:

当一个数组中大部分元素为0,或者为同一个值

处理方式为 记录数组一共几行几列,有多少不同值,把具有不同值的元素和行列和值记录在小规模数组中

猜你喜欢

转载自blog.csdn.net/rr18758236029/article/details/108422500