Set接口常用实现类:
package practice;
import java.util.HashSet;
import java.util.Set;
import java.util.TreeSet;
/**Set集合
* HashSet TreeSet
* @author liu
*
*/
public class Test19 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Set set=new HashSet();
set.add("SA");
set.add("AD");
set.add("AP");
set.add("AP");
set.add("DD");
set.add("GG");
System.out.println(set);
Set set2 =new TreeSet(set);
System.err.println(set2);
}
}
[DD, GG, AD, SA, AP]
[AD, AP, DD, GG, SA]
List接口实现类:LinkedList
通过动态加载的方式往泛型中添加不符合泛型的元素
package practice;
/**
* List接口
* LinkedList
*/
import java.lang.reflect.Method;
import java.util.Collections;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
public class Test20 {
public static void main(String[] args) {
List<String> list=new LinkedList();
for(int i=0;i<10;i++){
list.add("a0"+i);
}
System.out.println("遍历所有:"+list);
list.remove(0);
System.out.println("删除一个:"+list);
list.set(4, "a010");
System.out.println("修改一个:"+list);
String s=new String("1111");
list.set(7, s);
System.out.println("修改一个:"+list);
Object str=list.get(7);
System.out.println("获取元素:"+str);
Class c1=list.getClass();
try {
Method m=c1.getMethod("add",Object.class);
m.invoke(list, 20);
System.out.println(list);
//不能使用加强for循环遍历
//遍历方法①:
//System.out.println(list);
//遍历方法②:
Iterator it=list.iterator();
while(it.hasNext()){
Object obj= it.next();
System.out.print(obj+" ");
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
删除一个:[a01, a02, a03, a04, a05, a06, a07, a08, a09]
修改一个:[a01, a02, a03, a04, a010, a06, a07, a08, a09]
修改一个:[a01, a02, a03, a04, a010, a06, a07, 1111, a09]
获取元素:1111
[a01, a02, a03, a04, a010, a06, a07, 1111, a09, 20]
a01 a02 a03 a04 a010 a06 a07 1111 a09 20
Map接口实现类:HashMap,HashMap的子类:LinkedHashMap,TreeMap
package practice;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.TreeMap;
public class Test21 {
public static void main(String[] args) {
String [] args1=new String[]{"word","hello","body","word","hello","body","word","hello"};
int n=args1.length;
Map map=new HashMap();
Integer ONE =new Integer(1);
for(int i=0;i<n;i++){
String key =args1[i];
Integer frequency =(Integer) map.get(key);
if(frequency ==null){
frequency =ONE;
}else{
int value=frequency.intValue();
frequency=new Integer(value+1);
}
map.put(key, frequency);
}
System.out.println(map);
Map map2=new TreeMap(map);
System.out.println(map2);
HashMap map3=new LinkedHashMap<String,Integer>(map);
//LinkedHashMap遍历出来的顺序和刚加入时的顺序是一样的
System.out.println(map3);
}
}
{hello=3, body=2, word=3}
{body=2, hello=3, word=3}
{hello=3, body=2, word=3}
参考博客: http://blog.csdn.net/u014136713/article/details/52089156
http://www.cnblogs.com/hubingxu/archive/2012/02/21/2361281.html