Java泛型中的通配符

Posted mrzhang1

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java泛型中的通配符相关的知识,希望对你有一定的参考价值。

Java泛型中的通配符可以直接定义泛型类型的参数。而不用把该函数定义成泛型函数。

public class GenericsTest {
    
    public static void main(String[] args) {
        List<String> name = new ArrayList<String>();
        List<Integer> age = new ArrayList<Integer>();
        List<Number> number = new ArrayList<Number>();
        
        name.add("icon");
        age.add(18);
        number.add(314);
 
        //getUperNumber(name);//1
        getUperNumber(age);//2
        getUperNumber(number);//3
       
   }
 
//通配符方式实现,很简洁
public static void getData(List<?> data) { System.out.println("data :" + data.get(0)); } public static void getUperNumber(List<? extends Number> data) { System.out.println("data :" + data.get(0)); }

  //普通方式实现
   public static <T>void getData(List<T> data) {
      System.out.println("data :" + data.get(0));
   }
   
   public static <T extends Number>void getUperNumber(List<T> data) {
          System.out.println("data :" + data.get(0));
   }

}






以上是关于Java泛型中的通配符的主要内容,如果未能解决你的问题,请参考以下文章

java泛型中的上下界通配符

Java泛型中T和问号(通配符)的区别

java泛型中的通配符

JAVA 泛型中的通配符 T,E,K,V,?

聊一聊-JAVA 泛型中的通配符 T,E,K,V,?

聊一聊-JAVA 泛型中的通配符 T,E,K,V,?