您的位置:首页 > 编程语言 > Java开发

JAVA泛型详解(三)---一个创建常用容器对象的泛型工具类

2014-04-19 14:35 387 查看
import java.util.*;
public class ContainerTool{
//定义泛型方法,只需要将泛型参数列表置于返回值之前
public static <K,V> Map<K,V> map(){
return new HashMap<K,V> ();
}
public static <T> List<T> list(){
return new ArrayList<T> ();
}
public static <T> LinkedList<T> lList(){
return new LinkedList<T> ();
}
public static <T> Set<T> set(){
return new HashSet<T> ();
}
public static <T> Queue<T> queue(){
return new LinkedList<T> ();
}
public static void main(String []args){
//测试Map
Map<String,List<String>> mList=ContainerTool.map();
mList.put("Shape", Arrays.asList("Circle","Square","Triangle"));
mList.put("Anaimal", Arrays.asList("Dog","Cat","mouse"));
mList.put("Country", Arrays.asList("China","America","Russia"));
System.out.println("Map key: "+mList.keySet());//打印Map的key值
System.out.println("Map values: "+mList.values());//打印Map的value
for(String key:mList.keySet()){
System.out.print(key+" has: ");
for(String value:mList.get(key)){//通过get方法获得Map的每一个Key所对应的value
System.out.print(" "+value);
}
System.out.println();//换行
}
System.out.println("--------------------------------------------");
//测试List
List<String> list=ContainerTool.list();
list.addAll(Arrays.asList("dog","dog","cat","mouse","China"));
System.out.println("print List: "+list);
System.out.println("--------------------------------------------");//换行
//测试set
Set<String> set=ContainerTool.set();
set.addAll(Arrays.asList("dog","dog","cat","mouse","China"));
System.out.println("print Set: "+set);
System.out.println("--------------------------------------------");

}
}


     测试结果如下:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  泛型 java