首页 > 技术文章 > Java泛型入门简单示例

cckong 2020-11-17 14:46 原文

1.初始泛型

JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。

泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。

一个简单的问题 我需要你写一个方法对于整型、字符、字符串数组进行输出?

如果用一般方法会写三个方法 三个类型写三个方法

但是我们来看一个泛型的实例

class test{
  //这里的声明为static静态方法是因为要在另一个static的main函数中调用
    public  static <T>void print(T[] arr)
    {
        for(T tmp:arr)
        {
            System.out.print(tmp+"  ");
        }
        System.out.println();
    }
    public static void main(String[] args) {
//注意 泛型的类型不能是基本数据类型(int char等)
//必须是引用类型 Integer[] num
= new Integer[]{1,2,3,4}; Character[] charac= new Character[]{'a','b','c','d'}; String[] s=new String[]{"hello","world"}; print(num);print(s);print(charac); } }

输出为

 

 这里我们给出泛型的定义方法

  • 所有泛型方法声明都有一个类型参数声明部分(由尖括号分隔),该类型参数声明部分在方法返回类型之前(在上面例子中的<T>)。
  • 每一个类型参数声明部分包含一个或多个类型参数,参数间用逗号隔开。一个泛型参数,也被称为一个类型变量,是用于指定一个泛型类型名称的标识符。
  • 类型参数能被用来声明返回值类型,并且能作为泛型方法得到的实际参数类型的占位符。
  • 泛型方法体的声明和其他方法一样。注意类型参数只能代表引用型类型,不能是原始类型(像int,double,char的等)。

 

推荐阅读