JAVA集合框架和泛型笔记

package cn.bdqn.list;
//新闻标题类
public class NewsTitle{
	//ID	新闻标题	  作者
	private int id;
	private String title;
	private String uathor;
	public NewsTitle() {
	}
	public NewsTitle(int id, String title, String uathor) {
		this.id = id;
		this.title = title;
		this.uathor = uathor;
	}
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getTitle() {
		return title;
	}
	public void setTitle(String title) {
		this.title = title;
	}
	public String getUathor() {
		return uathor;
	}
	public void setUathor(String uathor) {
		this.uathor = uathor;
	}
	
}
package cn.bdqn.list;

import java.util.ArrayList;
import java.util.Iterator;

//新闻管理ArrayList简单应用
public class ArrayListDemo{
	public static void main(String[] args) {
		//集合存储多条新闻标题
		NewsTitle title1=new NewsTitle(1,"东莞终于晴了","admin");
		NewsTitle title2=new NewsTitle(2,"武汉终于晴了","admin");
		NewsTitle title3=new NewsTitle(3,"杭州终于晴了","admin");
		NewsTitle title4=new NewsTitle(4,"深圳终于晴了","admin");
		NewsTitle title5=new NewsTitle(5,"上海终于晴了","admin");
		ArrayList list=new ArrayList();
		list.add(title1);
		list.add(title2);
		list.add(title3);
		list.add(title4);
		list.add(0,title5);
		System.out.println("新闻标题的总数:"+list.size());
		//遍历list,取出每条新闻标题的题目 1.1普通for遍历
		for(int i=0;i<list.size();i++){
			NewsTitle title=(NewsTitle)list.get(i);
			System.out.println(title.getTitle());
		}
		System.out.println("******************");
		//另外一种遍历方法1.2增强for
		for(Object obj:list){
			NewsTitle title=(NewsTitle)obj;
			System.out.println(title.getTitle());
		}
		Iterator itor=list.iterator();
		while(itor.hasNext()){
			NewsTitle title=(NewsTitle)itor.next();
			System.out.println(title.getTitle());
		}
		//判断新闻标题里面是否包含title1新闻元素,返回true 或false
		System.out.println(list.contains(title1));
		//删除title1 新闻元素
		list.remove(title1);
		System.out.println(list.contains(title1));
		//清除所有元素
		list.clear();
		System.out.println(list.size());
		//判断集合是否是空的
		System.out.println(list.isEmpty());
		
	}
}
package cn.bdqn.link;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.LinkedList;

import cn.bdqn.list.NewsTitle;
//LinkedList 简单应用
public class LinkedListDemo {
	public static void main(String[] args) {
		NewsTitle title1=new NewsTitle(1,"东莞终于晴了","admin");
		NewsTitle title2=new NewsTitle(2,"武汉终于晴了","admin");
		NewsTitle title3=new NewsTitle(3,"杭州终于晴了","admin");
		NewsTitle title4=new NewsTitle(4,"深圳终于晴了","admin");
		NewsTitle title5=new NewsTitle(5,"上海终于晴了","admin");
		NewsTitle title6=new NewsTitle(6,"香港终于晴了","admin");
		NewsTitle title7=new NewsTitle(7,"澳门终于晴了","admin");
		
		LinkedList list=new LinkedList();
		list.add(title1);
		list.add(title2);
		list.add(title3);
		list.add(title4);
		list.add(title5);
		list.add(title6);
		list.add(title7);
		//判断集合中是否包含某个元素,返回false和true
		System.out.println(list.contains(title1));
		//System.out.println(list.size());
		//使用迭代器
		
		Iterator itor=list.iterator();
		while(itor.hasNext()){
			NewsTitle title=(NewsTitle)itor.next();
			System.out.println(title.getId()+"-"+title.getTitle());
		}
		//普通for
		for(int i=0;i<list.size();i++){
			NewsTitle title=(NewsTitle)list.get(i);
			System.out.println(title.getId());
		}
		System.out.println("*****************");
		//增强型for
		for(Object obj:list){
			NewsTitle title=(NewsTitle)obj;
			System.out.println(title.getId());
		}
		//移除第一个元素,并返回这个元素
		//list.removeFirst();
		System.out.println("*****************");
/*		for(Object obj:list){
			NewsTitle title=(NewsTitle) obj;
			System.out.println(title.getId());
		}*/
		//获取头条和末条新闻
		NewsTitle firstNews=(NewsTitle)list.getFirst();
		System.out.println("头条新闻标题:"+firstNews.getTitle());
		NewsTitle lastNews=(NewsTitle)list.getLast();
		System.out.println("末条新闻标题:"+lastNews.getTitle());	
	}
}
package cn.bdqn.link;

import java.util.HashMap;
import java.util.Map;
//Map的简单应用
//存储国家英文简称--对应国家全称(键-值对)
public class MapDemo {
	public static void main(String[] args) {
		Map countries=new HashMap();
		//往Map集合中添加键值对
		countries.put("CN", "中华人民共和国");
		countries.put("RU", "俄罗斯联邦");
		countries.put("FR", "法兰西共和国");
		countries.put("USA", "美利坚合众国");
		//获取Map的元素个数(对数)
		System.out.println("几对键-值"+countries.size());
		//通过某个键获取对应的值
		String cnSer=(String)countries.get("CN");
		System.out.println(cnSer);
		
		//判断Map中是否包含某个键
		boolean flag=countries.containsKey("USA");
		System.out.println("集合中是否包含US"+flag);
		//判断Map中是否包含某个值
		boolean flag_1=countries.containsValue("美利坚合众国");
		System.out.println("集合中是否包含美利坚合众国"+flag_1);
		//移除US键,删除特定键对应的键值对
		countries.remove("USA");
		System.out.println(countries.size());
		flag=countries.containsKey("USA");
		System.out.println("集合中是否包含USA"+flag);
		//分别显示map中键的集合,再拿值的集合,再拿键值对的集合
		//键的集合
		System.out.println(countries.keySet());
		//值的集合
		System.out.println(countries.values());
		//键值对
		System.out.println(countries);
		
		//清空
		countries.clear();
		if(countries.isEmpty()){
			System.out.println("Map数据已清空!");
		}else{
			System.out.println("Map数据未清空!");
		}
	}
}
package cn.bdqn.list;

import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
//Set的简单应用
public class SetDemo {
	public static void main(String[] args) {
		NewsTitle title1=new NewsTitle(1,"东莞终于晴了","admin");
		NewsTitle title2=new NewsTitle(2,"武汉终于晴了","admin");
		NewsTitle title3=new NewsTitle(3,"杭州终于晴了","admin");
		NewsTitle title4=new NewsTitle(4,"深圳终于晴了","admin");
		NewsTitle title5=new NewsTitle(5,"上海终于晴了","admin");
		Set set=new HashSet();
		set.add(title1);
		set.add(title2);		
		set.add(title3);
		set.add(title4);
		set.add(title5);
		System.out.println("新闻总条数:"+set.size());
		//遍历每条新闻信息
		for(Object obj:set){
			NewsTitle title=(NewsTitle)obj;
			System.out.println(title.getId()+"-"+title.getTitle());
			
		}
		System.out.println("*******************");
		//使用迭代器遍历
		Iterator itor=set.iterator();//获得迭代器itor
		//通过迭代器迭代出集合元素
		   while(itor.hasNext()){//判断迭代器有没有下一个元素
			   NewsTitle title=(NewsTitle)itor.next();
			   System.out.println(title.getId()+"-"+title.getTitle());
		   }
	}
}

ArrayList 常用方法;
遍历查看集合中的元素效率较高,插入删除元素效率较低
方法名说明
boolean add(Object 0)在列表的末尾顺序添加元素,起始索引位置从零开始
void add(int index,Object 0)在指定的索引位置添加元素。索引位置必须介于0和列表元素个数之间,LinkedLists使用时效率更高
int size()返回列表中的元素个数
Object get(int index)返回指定索引位置处的元素。取出的元素是Object类型,使用前需要进行强制类型转换
boolean contains(Object 0)判断列表中是否存在指定元素
boolean remove(Object 0)从列表中删除元素
Object remove(int index)

从列表中删除指定位置元素,起始索引位置从0开始

LinkedList相比ArrayList的独有常用方法First和Last
LinkedList插入和删除元素效率更高
removeFirst()移除第一个元素
removeLast()移除最后一个元素
addFirst()在第一个元素前插入元素
addLast()在最末一个元素后插入元素
getFirst()获得第一个位置的元素,需要强制类型转换
getLast()获得最后一个位置元素,需要强制类型转换


Map使用
key键——value值
Map con = new HashMap();//父类引用指向子类对象
put();往集合中添加键值对,例:con.put("CN","中国");
size();获取键值对对数
get();通过键,获取对应的值,例:String cnSer = (String)con.get("CN")
containskey()判断Map中是否包含某个键
containsvalue()判断Map中是否包含某个值
keySet()键的集合
values()值的集合
直接打印对象名键值对的集合,输出:[CN=中国]
clear()清空,if(isEmpty()){System.out.println("Map数据已清空");} isEmpty判断Map是否为空

遍历方法获取元素适用
普通forArrayList,     LinkedList
增强forArrayList,     LinkedList,    Set
IteratorArrayList,     LinkedList,     Set,    

以上笔记可能整理不全,希望各位大神在评论区补充。
也希望各位会学习的大神给小弟分享一些学习的方法,和做笔记的方法。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值