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是否为空 |
遍历方法获取元素 | 适用 |
普通for | ArrayList, LinkedList |
增强for | ArrayList, LinkedList, Set |
Iterator | ArrayList, LinkedList, Set, |
以上笔记可能整理不全,希望各位大神在评论区补充。
也希望各位会学习的大神给小弟分享一些学习的方法,和做笔记的方法。