脚本宝典收集整理的这篇文章主要介绍了【160天】尚学堂高琪Java300集视频精华笔记(129),脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
其它容器收尾讲解
队列Queue与Deque(单向队列与双向队列)
Enumeration(较老的接口,JDK1.5前使用频繁,维护旧系统会用到)
Hashtable与Properties
引用类型(强、软、弱、虚)与WeakHashMap
同步控制与只读设置
-
开源工具包:
容器总结
第129集:其它容器——Queue接口-单向队列-模拟银行业务-自定义堆栈
-
模拟银行排队
package test129; import java.util.ArrayDeque; import java.util.Queue; public class Demo01 { public static void main(String[] args){ Queue<Request> que = new ArrayDeque<Request>(); //模拟排队情况 for(int i=0;i<10;i++){ final int num = i; que.offer(new Request(){ public void deposit(){ System.out.println("第"+num+"个人存款额度为:"+(Math.random()*10000)); } }); } dealWith(que); } public static void dealWith(Queue<Request> que){ Request req = null; while(null!=(req=que.poll())){ req.deposit(); } } } interface Request{ //存款 void deposit(); }
-
弹、压、获取头
package test129; import java.util.ArrayDeque; import java.util.Deque; /** * @author wangtao * 1、弹 * 2、压 * 3、获取头 * */ public class MyStack<E> { //容器 private Deque<E> container = new ArrayDeque<E>(); //容量 private int cap; public MyStack(int cap){ super(); this.cap = cap; } //压栈 public boolean push(E e){ if(container.size()+1>cap){ return false; } return container.offerLast(e); } //弹栈 public E pop(){ return container.pollLast(); } //获取 public E peek(){ return container.peekLast(); } public int size(){ return this.container.size(); } }
package test129; public class Demo02 { public static void main(String[] args){ MyStack<String> backHistory = new MyStack<String>(3); backHistory.push("www.1.com"); backHistory.push("www.2.com"); backHistory.push("www.3.com"); backHistory.push("www.4.com"); System.out.println("大小:"+backHistory.size()); //遍历 String item = null; while(null!=(item=backHistory.pop())){ System.out.println(item); } } }
以上是脚本宝典为你收集整理的【160天】尚学堂高琪Java300集视频精华笔记(129)全部内容,希望文章能够帮你解决【160天】尚学堂高琪Java300集视频精华笔记(129)所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。