zoukankan      html  css  js  c++  java
  • 泛型处理 : List<? extends Object> list相当于是List<?> list

    package java;
    
    import java.util.ArrayList;
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;
    
    /**
     * List<? extends Object> list相当于是List<?> list
     * 如果要把值放到list中,不能直接add,要先放到一个非泛型的list中,在通过下面传参的方式进行处理,如果知道具体是哪个类型
     * 并且不是使用工具类中的方法或继承父类的方法,一般不适用泛型。
     */
    public class GenericTest {
    
    	public static void main(String[] args) {
    		Map<String, Object> map = new HashMap<String, Object>();
    		Map<String, Object> map01 = new HashMap<String, Object>();
    		Map<String, Object> map02 = new HashMap<String, Object>();
    		Map<String, Object> map03 = new HashMap<String, Object>();
    		map.put("1", "a");
    		map.put("2", "b");
    		map01.put("1", "a");
    		map01.put("3", "c");
    		map03.put("1", "a");
    		map03.put("4", "d");
    		List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
    		List<Map<String, Object>> list01 = new ArrayList<Map<String, Object>>();
    		list.add(map);
    		list.add(map01);
    		list.add(map03);
    		// System.out.println(list);
    		for (Object object : list) {
    			map02 = (Map<String, Object>) object;
    			String value = (String) map02.get("1");
    			if ("a".equals(value)) {
    				list01.add(map02);
    				// System.out.println(list01);
    				// System.out.println();
    			}
    		}
    
    		System.out.println(test(list01));
    	}
    
    	private static List<? extends Object> test(List<? extends Object> list) {
    		return list;
    	}
    }
    

      

  • 相关阅读:
    OC面向对象—继承
    OC面向对象—封装
    OC内存管理
    OC方法和文件编译
    OC语言基础知识
    节点操作-2
    留言 节点操作案例
    js 下拉菜单案例
    节点操作
    tab栏切换效果
  • 原文地址:https://www.cnblogs.com/qqyong123/p/8478489.html
Copyright © 2011-2022 走看看