数组和
自定义队列
1.数组
数组是java中最基本的一种数据结构,其长度是固定的;数组是有序的,数组中的每个元素都有自己的索引位置。
2.数组的定义
数组的定义有
三种方法:
A.数据类型[] 数组名=new 数据类型[数组长度];
B.数据类型[] 数组名=new 数据类型{数值};
C.数据类型[] 数组名=new 数据类型[ ]{数值,...};
3.数组的使用
数组也是一种对象,定义数组时一定要指明数组中的元素的类型;
取得数组的长度的方法:数组名.length
取得数组某一位置的元素:数组名[索引值](索引值:及数组中元素的位置,从0开始,最大为数组长度-1)
4.数组的排序
(1)一维数组排序
冒泡排序:
从第一个元素开始,每个元素与它后面的元素比较大小,小的放在前面
冒泡排序
public static int[] maoPao(int[] x) {
for (int i = 0; i < x.length; i++) {
for (int j = i + 1; j < x.length; j++) {
if (x[i] > x[j]) {
int temp = x[i];
x[i] = x[j];
x[j] = temp;
}
}
}
return x;
}
5.队列:
(1)为什么使用队列?
数组解决不了一下问题:
在一已经定义的数组末尾添加一个元素
在一已经定义的数组末尾添加另一个数组
在一已经定义的数组中删除一个元素,把后面的的元素向前移一位
(2)自定义队列的实现
首先,定义一个
接口:
public interface NJList {
/**
* 是向队列中添加一个元素
*/
public void add(Array ar);
/**
* 获取指定索引位置的元素值
*/
public Array get(int index);
/**
* 获取自定义队列的大小
*/
public int size();
}
在实现类的内部,使用数组保存装入队列的对象,每次新加入一个对象时,则创建一个比原来的数组长度大一的数组
(3)
泛型
泛型,就是在创建队列时,不指定队列中所放对象的类型。在定义泛型时,我们用到了<E> 和Object:
其中泛型<E> 表示可以匹配除基本的数据类型外所有的类型
Object 是java所有类的父类