java 语言里面范型T的用法
更新:HHH   时间:2023-1-7


Java5 以后有了范型,它的出现为java的发展带来了巨大的变化,在项目里面我们比较常用的有T这个类型,这个算是范型里面最大的类型了。

 来看个使用的例子:

package com.t;

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

public class Demo {
public static void main(String[] args) {
Demo demo = new Demo();
// 获取string类型
List<String> array = new ArrayList<String>();
array.add("test");
array.add("doub");
String str = demo.getListFisrt(array);
System.out.println(str);

    // 获取nums类型
    List<Integer> nums = new ArrayList<Integer>();
    nums.add(12);
    nums.add(13);

    Integer num = demo.getListFisrt(nums);
    System.out.println(num);
}

/**
 * 这个<T> T 可以传入任何类型的List 参数T 第一个 表示是泛型 第二个 表示返回的是T类型的数据 第三个 限制参数类型为T
 * 
 * @param data
 * @return
 */
private <T> T getListFisrt(List<T> data) {
    if (data == null || data.size() == 0) {
        return null;
    }
    return data.get(0);
}

}

在看一个使用的例子
package com.t;

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

public class Demo2<T> {

public static void main(String[] args) {

    //限制T 为String 类型
    Demo2<String> demo = new Demo2<String>();

    //获取string类型
    List<String> array = new ArrayList<String>();
    array.add("test");
    array.add("doub");
    String str = demo.getListFisrt(array);
    System.out.println(str);

    //获取Integer类型 T 为Integer类型
    Demo2<Integer> demo2 = new Demo2<Integer>();
    List<Integer> nums = new ArrayList<Integer>();
    nums.add(12);
    nums.add(13);
    Integer num = demo2.getListFisrt(nums);
    System.out.println(num);
}

/**
 * 这个只能传递T类型的数据
 * 返回值 就是Demo<T> 实例化传递的对象类型
 * @param data
 * @return
 */
private T getListFisrt(List<T> data) {
    if (data == null || data.size() == 0) {
        return null;
    }
    return data.get(0);
}

}

返回编程语言教程...