集合框架2(LinkedList)

 LinkedList方法

一、什么是LinkdList

    LinkedList 与 ArrayList 一样,实现了 List 接口,只不过 ArrayList 是基于数组实现的,而 LinkedList 是基于链表实现的。他的优点在于插入和删除方面

 

 

 

二、LinkedList常用方法

方法名说明

void  addFirst(Object o)

在列表的首部添加元素

void  addLast(Object o)

在列表的末尾添加元素

Object  getFirst()

返回列表中的第一个元素

Object  getLast()

返回列表中的最后一个元素

Object  removeFirst()

删除并返回列表中的第一个元素

Object  removeLast()

删除并返回列表中的最后一个元素

 三、例子:

新闻管理系统

1、可以添加头条新闻标题

2、获取头条和最末条新闻标题

3、可以删除末条新闻标题

我们先写一个新闻标题类

//新闻标题
public class XinWen {
	public int id;
	public String mingCheng;
	public String zuoZhe;
	public XinWen(){}
	public XinWen(int id, String mingCheng, String zuoZhe) {
		super();
		this.id = id;
		this.mingCheng = mingCheng;
		this.zuoZhe = zuoZhe;
	}

	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getMingCheng() {
		return mingCheng;
	}
	public void setMingCheng(String mingCheng) {
		this.mingCheng = mingCheng;
	}
	public String getZuoZhe() {
		return zuoZhe;
	}
	public void setZuoZhe(String zuoZhe) {
		this.zuoZhe = zuoZhe;
	}
	
	}

然年后用

LinkedList 方法来做

//新闻管理
public class GuanLi {
	public static void main(String[] args) {
	//集合储存多条新闻标题
		BiaoTi no1=new BiaoTi(1,"今天天气真好1","姓名");
		BiaoTi no2=new BiaoTi(2,"今天天气真好2","姓名");
		BiaoTi no3=new BiaoTi(3,"今天天气真好3","姓名");
		BiaoTi no4=new BiaoTi(4,"今天天气真好4","姓名");
		BiaoTi no5=new BiaoTi(5,"今天天气真好5","姓名");
		
		LinkedList list=new LinkedList();
		list.add(no1);
		list.add(no2);
		list.add(no3);
		//往末尾插入
		list.addLast(no4);
		//往首部插入
		list.addFirst(no5);
		//输出一共多少标题
		System.out.println("新闻标题为"+list.size()+"个");
		//遍历出来
		for(int i=0;i<list.size();i++){
			BiaoTi no=(BiaoTi)list.get(i);
			System.out.println(no.getId()+"."+no.getTiMu());
			
		}
		//用迭代器遍历
//		Iterator itor=list.iterator();
//		while(itor.hasNext()){
//			BiaoTi title=(BiaoTi)itor.next();
//			System.out.println(title.getId()+"--"+title.getTiMu());
//		}
		System.out.println("\n.................\n");
		//获取头条新闻
		BiaoTi toutiao=(BiaoTi)list.getFirst();
		System.out.print("头条为:"+toutiao.getTiMu());
		System.out.println("\n.................\n");
		
		//获取末条新闻
		BiaoTi motiao=(BiaoTi)list.getLast();
		System.out.println("末条为:"+motiao.getTiMu());
		System.out.println("\n.................\n");
		
		
		//删除末条标题
		System.out.println("删除末条标题后");
		list.removeLast();
		for(Object obj:list){
			BiaoTi title=(BiaoTi)obj;
			System.out.println(title.getTiMu());
		}
		System.out.println("\n.................\n");
		//再删除首条标题
		System.out.println("再删除首条标题后");
		list.removeFirst();
		for(Object obj:list){
			BiaoTi title=(BiaoTi)obj;
			System.out.println(title.getTiMu());
		}
			
	}
}

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值