java数组队列

学习不久,理解不深。有错误之处还请指正。下面是我对java数组队列的理解。

什么是数组队列?

数组队列就是利用数组存储数据的属性来改变它只有固定长度的局限性,增加了一些删除,添加数据等功能,增加了其灵活性;

数组队列的实现

数组队列实现分为两部分:

1.数组队列接口

在数组队列接口中需要定义一些抽象方法,例如删除数据,添加数据,获取数据等方法

若你想存储多种类型的数据你可以使用泛型,泛型可以用来指任何类型的一种数据。下面的代码使用泛型编写的,以便于添加存储自己想要的类型数据。

接下来创建一个接口List类,用来删除数据,添加数据,获取数据等等,下面是代码。

public interface List {
public void add(E e);//向队列末尾添加一个元素
public boolean add(int index,E e);//向指定位置添加一个元素,添加成功返回true,添加失败返回false;
public E getE(int index);//获取指定位置的元素
public E remove(int index);//删除指位置的元素
public boolean remove(E e);//删除元素
public boolean update(int index,E e);//更新指定位置的元素
public boolean update(E e,E newValue);//更新某一个元素
public boolean removeall();//移除所有元素
public int size();//获取数组队列中元素个数的总数
}

 

2.数组队列类

在数组队列类中继承数组队列接口,然后要定义两个重要的属性,分别是数组长度length元素个数size;然后在重写接口中的所有方法就可以了,关键是写好添加,删除等方法;下面的代码使用泛型编写的,以便于添加存储自己想要的类型数据。

下面是数组队列类myArraysList的代码

public class myArraysList implements List{
	private static int size=0;//定义数组队列中元素个数的初始值,为了在数组队列类中测试下面的方法是否正确,所以设置成静态
	private static int length=1;//记录数组初始长度,为了在数组队列类中测试下面的方法是否正确,所以设置成静态
	Object [] Array;//声明一个数组变量
	public myArraysList(int length){
		this.length=length;
		Array=new Object[length];//定义数组长度为length
	}
	@Override
	public void add(E e) {//向队列末尾添加一个元素
		// TODO Auto-generated method stub
		if(size=size){
			System.out.println("超过数组的size就不能添加");
			return false;
		}
		else{
			Object []Array1=new Object[size+1];//Array1指定义的一个新的数组
			for(int i=0;i=size){
			return null;
		}
		else{
		return (E)Array[index];
		}
	}

	@Override
	public E remove(int index) {//删除指位置的元素
		// TODO Auto-generated method stub
		if(index<0||index>=size){
			System.out.println("超过数组的size就不能删除");
		}
		else{
			Array[index]=null;
			for(int i=index;i=0&&index mylist=new myArraysList(length);//创建数组队列对象myArraysList
		mylist.add("wo");
		mylist.add("xihuan");
		mylist.add("ni");
		mylist.add(2, "you");
		
		for(int i=0;i

参考:https://blog.csdn.net/weixin_42621338/article/details/82080167

 

 

 

 

 

你可能感兴趣的:(java数组队列)