多语言展示
当前在线:1534今日阅读:155今日分享:35

老黑讲Java之基础教程数组

这次介绍的基础教程将迈向一个新高度,即将介绍的是最基础的数据结构——数组,那么有人会问什么是数据结构呢?说起数据结构必须要说一个牛人,图灵。他是计算机科学鼻祖,他说了一句非常著名的话,“程序=算法+数据结构”,虽然这句话在现在概括程序设计有些偏颇,但是这句话足够概括编程的要素。   老黑之前介绍的循环语句可以说是最基础的算法,算法可以操作数据,而存储数据要用到数据结构,今天介绍最基础的数据结构——数组。
工具/原料
1

JDK

2

eclipse

数组
1

什么是数组    说起数组,必须介绍数据结构的概念,数据结构就是把数据按照特定的结构保存起来,合理的数据结构可以快速的操作数据。    数组是最基本的一种数据结构。

2

什么是数组    1、数组是相同数据类型的元素组成的集合。    2、元素按线性顺序排列。线性排列是指一个元素接着一个元素(“一个跟一个”)。    3、可以通过元素所在位置(下标)做标识来访问每一个元素(下标从0开始,最大值到元素个数-1)

3

定义基本类型数组    1、声明数组的语法:         数组类型[] 数组名 = new 数组类型[数组大小];    2、例如:int[] array = new int [10];

4

定义数组的要点:    1、数组类型;    2、数组名称;    3、数组标识符[]    4、执行new之后才为数组分配指定的大小空间;    5、int[] arr 与 int arr[]两种写法均可;    6、声明数组时可以不规定数组长度,new关键字分配空间时需制定分配空间大小。

5

初始化数组   基本类型的数组创建后,元素的初始值:byte、short、char、int、long为0;float和double为0.0;boolean为false   1、数组的声明同时对数组的元素初始化,例如:       int[] arr = {1, 2, 3, 4, 5};       boolean[] boolArr  = {true, false};       double[] doubleArr = {3.2,  4.5};    注:此种写法用于声明的初始化,不能用于赋值,下面错误代码编译错误:           int[] arr;         arr = {1, 2, 3, 4, 5};    2、可以通过下面的方式声明的数组类型变量初始化:         int[] arr;         arr = new int[]{1, 2, 3, 4};     注:[]种不能写长度。

7

下标访问数组元素   通过数组下标访问数组元素,代码如下:   int[] arr = new int[]{1, 2, 3, 4, 5};   int content = arr[0];   System.out.println(content);//内容为1

8

遍历数组元素    遍历数据元素,选择for循环语句,循环变量可以通过访问数组下标访问每一个元素。    public static void main(String[] args) {        int[] arr = new int[5];        for(int i=0;i

数组的复制
1

数组的复制    使用System.arraycopy()可以复制数组    public static void copy(Object src, int srcPos, Object dest, int destPos, int length){        src表示源数组        srcPos表示源数组中的起始位置        dest表示目标数组        destPos表示目标数组中的起始位置        length表示要复制的数组元素的长度    }demo代码如下:    public static void main(String[] args) {        int[] srcArr = {1, 2, 3, 4, 5};        int[] destArr = new int[6];        System.arraycopy(srcArr,0, destArr , 0, 5);        System.out.println(Arrays.toString(destArr));    }

2

使用Arrays.copyOf方法数组复制   1、使用java.util.Arrays类的copyOf方法实现数组复制       类型[] new Array = Arrays.copyOf(类型[] original, int newLength);   2、当newLength小于源数组,则进行截取;        当newLength大于源数组,则取0或null值填充。   3、产生的新数组可以大于源数组的长度       int[] arr = {1, 2, 3, 4};       int[] copyArr = Arrays.copyOf(arr, 5);       System.out.println(Arrays.toString(copyArr));      其中数组的许多方法是通过java.utils.Arrays调用的方法。

3

Arrays.sort方法数组排序    int[] arr = {2, 1, 4, 3, 5};    Arrays.sort(arr);    System.out.println(Arrays.toString(arr));

推荐信息