大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
import java.util.ArrayList;
超过10余年行业经验,技术领先,服务至上的经营模式,全靠网络和口碑获得客户,为自己降低成本,也就是为客户降低成本。到目前业务范围包括了:成都做网站、成都网站建设,成都网站推广,成都网站优化,整体网络托管,成都小程序开发,微信开发,成都App定制开发,同时也可以让客户的网站和网络营销和我们一样获得订单和生意!
/**
*
* @author 狱韬
*/
public class SnakeBody {
private int size=0; //队列的长度
private int cursor=-1; //指针
private ArrayListint[] list=null; //存储器
public SnakeBody() {
list=new ArrayListint[](); //存储器
}
//返回底部的数据
public int[] getLast(){
return list.get(list.size()-1);
}
//返回顶部的数据
public int[] getFirst(){
return list.get(0);
}
//压入数据
public void put(int[] arry){
list.add(arry);
}
//删除底部数据
public void removeLast(){
list.remove(list.size()-1);
}
//重置
public void reSet(){
list=new ArrayListint[](); //存储器
}
//删除顶部数据
public void removeFirst(){
list.remove(0);
}
//返回数据长度
public int size(){
return list.size();
}
public static void main(String[] args) {
SnakeBody data = new SnakeBody();
for(int i=0;i10;i++){
data.put(new int[]{0,i});
}
System.out.println(data.getFirst()[0]+"-------"+data.getFirst()[1]);
System.out.println(data.getLast()[0]+"-------"+data.getLast()[1]);
data.removeLast();
System.out.println(data.getFirst()[0]+"-------"+data.getFirst()[1]);
System.out.println(data.getLast()[0]+"-------"+data.getLast()[1]);
}
}
没明白什么意思,是队列中的元素,隔一个出队列吗?这样的话可以用两个队列,对象先装进一个队列A,之后for遍历的时候 奇数项 拿出来 ,偶数项 放入另一个队列B,第一个队列A遍历完,将队列A当成队列B 队列B当成队列A,重复以上。其他间隔也可以自己写方法。
数据的情况:
[0] [1] [2] [3] [4]
加入一个:
[0] [1] [2] [3] [4] [5]
取出一个后
[0] [1] [2] [3] [4] [5]
可以看出来,每次取出第一个,第一个元素还是没变,一直是0
要让其数据变成 [1] [2] [3] [4] [5] 那么就要自己手动变动数据(就是手动往前移动)