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());
		}
	}
}
  

  

时间: 2024-11-05 02:28:42

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

Java使用LinkedList模拟一个堆栈或者队列数据结构

用Java模拟一个堆栈或者队列数据结构. 首先得明白堆栈和队列的数据结构: 堆栈:先进后出 队列:先进先出 LinkedList中刚好有addFirst()和addLast()方法. [java] view plaincopyprint? public class Stack { public static void main(String[] args) { StackTools tools = new StackTools(); tools.add("a"); tools.add(

用LinkedList模拟一个堆栈或者队列数据结构 总结: LinkedList知识点

/** 用LinkedList模拟一个堆栈或者队列数据结构. 创建一个堆栈和队列数据结构对象,该对象中使用LinkedList来完成的. 知识点总结: 1.LinkedList特点:链表式数据结构. 重复有序,查询速度慢,增删速度快.不同步的. 2.LinkedList除了实现List接口增删改查的功能外,有一些特有的方法,能够实现在List(列表)的开头和结尾 插入,删除,获取等特有功能.这就是为什么LinkedList能够模拟一个堆栈,或者队列,双端队列的数据结构了. 涉及知识点: 1.什么

使用LinkedList模拟一个堆栈或者队列数据结构

使用LinkedList模拟一个堆栈或者队列数据结构. 堆栈:先进后出  如同一个杯子. 队列:先进先出  如同一个水管. import java.util.LinkedList; public class DuiLie { private LinkedList link; public DuiLie() { link = new LinkedList(); } public void myAdd(Object obj) { link.addFirst(obj); } public Object

java集合 collection-list-LinkedList 模拟一个堆栈或者队列数据结构。

/* 使用LinkedList模拟一个堆栈或者队列数据结构. 堆栈:先进后出 如同一个杯子. 队列:先进先出 First in First out FIFO 如同一个水管. */ import java.util.*; class DuiLie { private LinkedList link; DuiLie() { link = new LinkedList(); } public void myAdd(Object obj) { link.addFirst(obj); } public O

【Java学习笔记】&lt;集合框架&gt;使用LinkedList来模拟一个堆栈或者队列的数据结构

1 import java.util.LinkedList; 2 3 public class Test5 { 4 5 public static void main(String[] args) { 6 7 Duilie dl = new Duilie(); 8 9 dl.myAdd("abc1"); 10 dl.myAdd("abc2"); 11 dl.myAdd("abc3"); 12 dl.myAdd("abc4");

java通过LinkedList实现堆栈和队列数据结构

1 package com.shb.java; 2 3 import java.util.LinkedList; 4 5 public class TestLinkedList { 6 7 /** 8 * @author shaobn 9 * @Describe :利用LinkedList实现队列和堆栈 10 * @param args 11 * @Time : 2015-8-27 下午10:28:33 12 */ 13 public static void main(String[] args

Java List集合特有方法程序用法

package Collection; /* Collection |--List:元素是有序的,元素可以重复.因为该集合体系有索引 | |--ArrayList:底层的数据结构使用的是数组结构 特点:查询,修改速度很快,但是增删稍慢.线程不同步 | |--LinkedList:底层使用的是链表的数据结构 特点:增删速度很快,查询稍慢 | |--Vector:底层是数组数据结构.线程同步.被ArrayList替代了 |--set:元素是无序,元素可以重复 List:集合特有的方法,凡是可以操作角

LInkedList特有方法演示

package java_test; import java.util.LinkedList; public class LinkedListDemo { public static void main(String[] args) { // TODO Auto-generated method stub LinkedList link = new LinkedList(); link.addFirst("abc1"); link.addFirst("abc2");

java集合_collection子接口 list的特有方法,ArrayList类体现

/* Collection |--List:元素是有序的,元素可以重复.因为该集合体系有索引. |--ArrayList:底层的数据结构使用的是数组结构.特点:查询速度很快.但是增删稍慢.线程不同步. |--LinkedList:底层使用的链表数据结构.特点:增删速度很快,查询稍慢.线程不同步. |--Vector:底层是数组数据结构.线程同步.被ArrayList替代了.因为效率低. |--Set:元素是无序,元素不可以重复.. List: 特有方法.凡是可以操作角标的方法都是该体系特有的方法