java 实现简单的顺序队列

package com.my;

import java.util.Arrays;
/**
 * 顺序队列
 * @author wanjn
 *
 */
public class ArrayQueue {
    private int index = 0 ;//队尾指针
    private Object[] objs;
    public ArrayQueue(){
        objs = new Object[10];
    }
    //进队列
    public void add(Object value){
        if (index>=10) {
            throw new RuntimeException("长度越界");
        }
        objs[index++] = value;//尾指针前置法,index尾指针指向队尾元素的下一个位置
    }
    //出队列
    public Object poll(){
        Object oldValue = objs[0];
        objs[0] = null;
        Object[] newArry = new Object[10];
        System.arraycopy(objs, 1, newArry, 0, 9);
        objs = newArry;
        index--;
        return oldValue;
    }
    @Override
    public String toString() {
        return "ArrayQueue [index=" + index + ", objs=" + Arrays.toString(objs)
                + "]";
    }
    
}

 

转载于:https://www.cnblogs.com/wanjn/p/8360342.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值