java 队列整型_Java设计一个名为Queue的类用于存储整数。像栈一样,队列具有元素。在栈中,元素以“后进先出”的方式...

获得。在队列中,元素以“先进先出”的方式获取。该类包含:一个名为element的int[]类型的数据域,保存队列中的int值。一个名为size的数据域,保存队列中的元素个数.一个构造方法,使...

获得。在队列中,元素以“先进先出”的方式获取。该类包含:

一个名为element的int[]类型的数据域,保存队列中的int值。

一个名为size的数据域,保存队列中的元素个数.

一个构造方法,使用默认的容量8来创建一个Queue对象。

方法enqueue(int v),用于将v加入到队列中。

方法dequeue(),用于从队列中移除元素并返回该元素。

方法empty(),如果队列是空的话,该方法返回true。

方法getSize(),返回队列的大小。

初始数组的大小为8,一旦元素个数超过了大小,数组大小将会翻倍。如果一个元素从数组的开始部分移除,你需要将数组中的所有元素往左边改变一个位置。编写一个测试程序,增加从1到20的21个成员,然后将这些数字移除并显示它们。

这是我写的,但死循环,求大神修改

public class Queue {

private int[] elements;

private int size;

public static final int DEFAULT_CAPACITY = 16;

public Queue(){

elements = new int[DEFAULT_CAPACITY];

}

public Queue(int capacity){

elements = new int[capacity];

}

public void enqueue(int v){

if(size>=elements.length){//数组扩容

int[] temp = new int[elements.length*2];

System.arraycopy(elements, 0, temp,0,elements.length);

elements = temp;

}

elements[size++]=v;

}

public int dequeue(){//先进先出

int index = 0;

return elements[index++];

}

public boolean empty(){

return size==0;

}

public int getSize(){

return size;

}

}

public class TestQueue {

public static void main(String[] args) {

// TODO Auto-generated method stub

Queue test = new Queue();

for(int i=1;i<=20;i++)

test.enqueue(i);

while(!test.empty()){

System.out.print(test.dequeue()+" ");

}

}

}

展开

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值