通过这段时间对集合框架的学习,java中的常见容器基本学完,数组,stringbuilder,StringBuffer,集合
集合笔记:
package 集合框架1.arraylist; import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; /**集合类的由来: * 对象用于封装特有数据,对象多了就需要存储,如果对象的个数不确定就是用集合容器进行存储。 * 集合特点: * 1、用于存储对象的容器 * 2、集合的长度是可变的 * 3、集合中不可以存储基本数据类型值 * * 集合容器因为内部数据结构不同,有多种具体容器, * 不断向上抽取,就形成了集合框架 * 框架的顶层Collection接口 * Collection的常见方法: * 1、添加 * boolean add(E e); * boolean addAll(Collection Coll); * 2、删除 * boolean remove(Object obj);删除一个对象 * boolean removeAll(Collection Coll);删除一堆对象 * clear();全部删除 * 3、判断包含关系 * boolaen contains(Object obj); * boolean containsAll(Collection Coll); * boolean isEmpty();判断集合中是否有元素 * 4、获取 * int size();获取长度 * Iterator iterator();返回的是迭代器对象;该对象必须依赖于具体的容器,因为每个容器的数据结构都不同, * 所以搞迭代器对象时容器中进行内部实现的。 * 对于使用容器者而言,具体的实现不重要,只要通过容器获取到该实现的迭代器的对象即可, * 也就是iterator()方法。 * 5、其它 * boolean retainAll(Collection Coll);取交集 * Object[] toArray();将集合转成数组 * */ public class JiHeDemo1 { public static void main(String[] args) { Collection<String> coll = new ArrayList<String>(); show(coll); Collection<String> c1 = new ArrayList<String>(); Iterator<String> i1=c1.iterator(); while(i1.hasNext()){ System.out.println(i1.next()); } Collection<String> c2 = new ArrayList<String>(); Iterator<String> i2=c2.iterator(); while(i2.hasNext()){ Object obj=i1.next(); System.out.println(obj.toString()); } } public static void show(Collection<String> c1,Collection<String> c2){ c1.add("abc1"); c1.add("abc2"); c1.add("abc3"); c1.add("abc4"); c2.add("abc2"); c2.add("abc5"); c2.add("abc6"); System.out.println("c1"+c1); System.out.println("c2"+c2); //演示addAll() c1.addAll(c2); //演示removeALL() boolean b1=c1.removeAll(c2); System.out.println("removeAll:"+b1); System.out.println("c1"+c1); //containsAll() boolean b2=c1.containsAll(c2); System.out.println(b2); //retainAll() boolean b3=c1.removeAll(c2);//与removeAll功能相反,取交集; System.out.println(b3+" "+c1); } public static void show(Collection<String> coll){ //1、添加元素。add coll.add("nba1"); coll.add("nba2"); coll.add("nba3"); //2、删除元素 remove coll.remove("nba2");//会改变集合长度 //清空集合 coll.clear(); //判断包含 System.out.println(coll.contains("nba1")); System.out.println(coll); } }
package 集合框架1.arraylist; import java.util.ArrayList; import java.util.List; import java.util.ListIterator; /**Collection * ---List:有序(按照存入先后存放,通过索引取出);元素可以重复 * ---set :存入元素不能重复*/ public class JiHeDemo2 { public static void main(String[] args) { List<String> list = new ArrayList<String>(); show(list); } public static void show(List<String> list) { list.add("nba1"); list.add("nba2"); list.add("nba3"); list.add("nba4"); System.out.println(list); //插入元素 list.add(1,"abc1"); System.out.println(list); //删除 list.remove(3); System.out.println(list); //判断 boolean b1=list.contains("nba1"); System.out.println(b1); boolean b2=list.isEmpty(); System.out.println(b2); //取出 //System.out.println(list.get(3)); for(int x=0;x<list.size();x++){ System.out.println(list.get(x)); } for(ListIterator<String> li1 = list.listIterator();li1.hasNext();){ System.out.print(li1.next().substring(0, 3)+","); } } }