• Java LinkedList特有方法程序小解 && 使用LinkedList 模拟一个堆栈或者队列数据结构。


    package Collection;
    
    import java.util.LinkedList;
    
    /*
    LinkedList:特有的方法
    addFirst()/addLast();
    getFirst()/getLast();
    removeFirst()/removeLast();
    
    若链表为空,抛出 没有这个元素异常/NoSuchElementException
    但是 JDK1.6 版本以后出现了替代方法:
    offerFirst()/offerLast();
    peekFirst()/peekLast()
    pollFirst()/pollLast():若链表为空,则返回null
    
    */
    
    public class LinkListDemo
    {
    	public static void main(String[] args)
    	{
    		LinkedList<String> link = new LinkedList<String>();
    		
    		link.addFirst("Java01");
    		link.addFirst("Java02");
    		link.addFirst("Java03");
    		link.addFirst("Java04");
    		
    		sop(link); 
    		// [Java04, Java03, Java02, Java01]
    		/*
    		get 方法只取元素
    		remove 方法取完元素,还删除
    		*/
    		
    		/*
    		sop(link.getFirst());
    		sop(link.getLast());
    		sop(link.removeFirst());
    		sop(link.removeLast());
    		
    		sop("size: "+link.size());
    		*/
    		
    		while (!link.isEmpty())
    		{
    			sop(link.removeFirst());
    		}
    	}
    	
    	public static void  sop(Object obj)
    	{
    		System.err.println(obj);
    	}
    }
    
    ////////////////////////////////////////////////////////
    ////////////////////////////////////////////////////////
    package Collection;
    
    import java.util.LinkedList;
    
    
    /*
    使用LinkedList 模拟一个堆栈或者队列数据结构。
     
     堆栈:先进后出
     队列:先进先出
     
    */
    
    class DuiLie
    {
    	private LinkedList link;
    	DuiLie()
    	{
    		link = new LinkedList();
    	}
    	
    	public void myAdd(Object obj)
    	{
    		link.addFirst(obj);
    	}
    	public Object myGet()
    	{
    		return link.removeLast();
    	}
    	
    	public boolean isNull()
    	{
    		return link.isEmpty();
    	}
    	
    }
    
    public class LinkListTest
    {
    	public static void main(String[] args)
    	{
    		DuiLie dl = new DuiLie();
    		dl.myAdd("Java01");
    		dl.myAdd("Java02");
    		dl.myAdd("Java03");
    		dl.myAdd("Java04");
    		
    		// System.out.println(dl.myGet());
    		
    		System.out.println("============");
    		
    		while (!dl.isNull())
    		{
    			System.out.println(dl.myGet());
    		}
    	}
    }
      
    

      

  • 相关阅读:
    node.js基础回顾
    PHP基础回顾之表单(二)
    PHP基础回顾(一)
    知识图谱Knowledge Graph
    Qt addStretch()详解
    Qt实现 QQ好友列表QToolBox
    Qt5
    用户级线程和内核级线程
    TCP状态转换图、滑动窗口、半连接状态、2MSL
    理解tcp顺序释放操作和tcp的半关闭
  • 原文地址:https://www.cnblogs.com/IamJiangXiaoKun/p/4653618.html
Copyright © 2020-2023  润新知