ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Java期末复习(一)---集合框架(List接口相关知识)

2021-06-26 17:04:29  阅读:118  来源: 互联网

标签:NewTitle Java list List System 新闻标题 --- println out


写在前面

本博客仅用于个人期末复习,软件工程初学,欢迎指出错误及指导!

一、ArrayList类

        通过导入Java中的ArrayList类来创建,并且实现简单的添加、删除、替换操作

        

/*
 * 使用ArrayList类方法实现简单的列表添加和删除等操作
 */
package demo;
import java.util.*;
public class Part8_1 {
 
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		ArrayList list = new ArrayList();
		list.add("貂蝉");
		list.add("吕布");
		list.add("马超");
		//判断集合中是否包含李白
		System.out.println(list.contains("李白"));
		//把索引为0的数据移除
		list.remove(0);
		System.out.println("-------------------------");
		list.set(1, "刘备");
		for(int i = 0; i < list.size(); i++) {
			String name = (String)list.get(i);
			System.out.println(name);
		}
		System.out.println("-------------------------");
		System.out.println(list.indexOf("关羽"));
		list.clear(); 							//清空列表list数据
		System.out.println("-------------------------");
		for(Object obj:list) {
			String name = (String)obj;
			System.out.println(name);
		}
		System.out.println(list.isEmpty());
	}

}

二、List类

         Collection接口可以存储一组,不唯一,无序的对象。List隶属于Collection接口,可以存放重复元素,但有序,ArrayList类、LinkedList类是List接口的常用实现类

        使用List创建集合存放新闻标题元素

        定义新闻类及构造方法

/*
 * 新闻类定义,构造方法以及返回新闻标题的自定义方法
 * 用于实现Part8_..系列新闻类的调用

 */
package demo;
import java.util.*;
public class NewTitle {
	 int count ;
	 String Name;
	 String Admin;
	public NewTitle(int num, String name, String admin) {
		this.Admin=admin;
		this.count = num;
		this.Name = name;
	}
	public String getTitleName() {
		return Name;
	}
}

List接口集合的创建

/*
 * 使用List类实现存储与读取等过程
 */
package demo;
import  java.util.*;
public class Part8_2 {

	public static void main(String[] args) {
		NewTitle car = new NewTitle(1,"汽车","管理员");
		NewTitle tech = new NewTitle(2,"科技","管理员");
		//创建集合对象用以存储新闻标题
		//按照顺序添加新闻标题
		newsTitleList.add(car);
		newsTitleList.add(tech);
		//获取新闻标题总数
		System.out.println("新闻标题的总数目是:"+newsTitleList.size()+"条。");
		//遍历集合对象
		for(Object obj:newsTitleList) {
			NewTitle title = (NewTitle)obj;
			System.out.println(title.getTitleName());
		}
		
	}

}

 三、LinkedList接口

        List和ArrayList集合因为可以使用索引来查询获取元素,所以在遍历和随机访问元素时效率比较高,但是,就像数组一样,这样的特性使得在添加和删除非尾部元素时,会导致后续元素的移动,因此在添加,删除操作频繁的应用场景下,ArrayList效率变回低下。

        LinkedList类是List接口的链接式列表实现类,在支持List接口可选的列表操作,并且允许元素值是任何类型的数据,包括null。十分适合插入,删除的操作场景,但由于其链表的存储方式,因此查询的效率会相应的降低

使用LinkedList集合存储新闻标题

/*
 * LinkedList集合存储新闻标题,试下获取,添加以及删除第一条和最后一条
 */
package demo;
import java.util.*;
public class Part8_3 {
	public static void main(String args[]) {
		NewTitle car = new NewTitle(1,"汽车","管理员");
		NewTitle medcial = new NewTitle(2,"医学","管理员");
		NewTitle fun = new NewTitle(3,"娱乐","管理员");
		NewTitle gym = new NewTitle(4,"体育","管理员");
		//创建集合存储新闻标题
		LinkedList Title = new LinkedList();
		Title.add(car);
		Title.add(medcial);
		//添加第一条和最后一条新闻
		Title.addFirst(fun);
		Title.addLast(gym);
		System.out.println("第一条和最后一条新闻已添加");
		//获取第一条和最后一条新闻
		NewTitle first = (NewTitle)Title.getFirst();
		System.out.println("第一条新闻的标题是"+first.getTitleName());
		NewTitle last = (NewTitle)Title.getLast();
		System.out.println("最后一条新闻的标题是"+last.getTitleName());
		//删除第一条和最后一条新闻
		Title.removeFirst();
		Title.removeLast();
		System.out.println("第一条和最后一条新闻已删除");
		//遍历所有的新闻标题
		System.out.println("遍历所有的新闻标题");
		for(Object obj:Title) {
			NewTitle title = (NewTitle)obj;
			System.out.println(title.getTitleName());
		}
	}

}

   

        

标签:NewTitle,Java,list,List,System,新闻标题,---,println,out
来源: https://blog.csdn.net/z1248969909/article/details/118250418

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有