zoukankan      html  css  js  c++  java
  • 泛型的通配符

    package com.bjpowernode.t02generic;

    import java.util.ArrayList;
    import java.util.LinkedList;
    import java.util.List;

    /*
    * 泛型的通配符
    */
    public class TestGeneric03 {

    public static void main(String[] args) {
    ArrayList<String> l1 = new ArrayList<>();
    LinkedList<Integer> l2 = new LinkedList<>();
    List<Double> l3 = new LinkedList<>();
    List<Object> l4 = new ArrayList<>();

    List<Number> l5 = new ArrayList<>();

    //可以像集合中添加泛型类型的子类
    l4.add("String");

    print4(l5);
    }

    //带有下边界的通配符,只能传入泛型是Integer或其父类型
    public static void print4(List<? super Integer> list) {

    }

    //带有上边界的通配符,只能传入泛型是Number或其子类型
    public static void print3(List<? extends Number> list) {

    }


    //通用的遍历List的方法
    //使用?表示泛型的通配符
    public static void print2(List<?> list) {
    for(Object obj:list) {
    System.out.println(obj);
    }
    }

    public static void print1(List list) {
    for(Object obj:list) {
    System.out.println(obj);
    }
    }

    }

  • 相关阅读:
    c语言命名规则 [转载]
    [转贴]C编译过程概述
    [转贴]漫谈C语言及如何学习C语言
    Semaphore源码分析
    如何快速转行大数据
    web前端到底怎么学?
    Code Review怎样做好
    SDK与API的理解
    分析消费者大数据
    程序员的搞笑段子
  • 原文地址:https://www.cnblogs.com/Koma-vv/p/9561620.html
Copyright © 2011-2022 走看看