zoukankan      html  css  js  c++  java
  • Java 泛型<T> T 与 T的用法

    T 与 T 比较

    T是Type的首字母缩写; T 表示“返回值”是一个泛型,传递什么类型,就返回什么类型;而单独的“T”表示限制传递的参数类型。

    T的用法

    T表示返回值T是泛型,T只是一个占位符,用来告诉编译器,这个东西先给我留着,等我编译的时候再告诉你是什么类型。

    public class TTDemo {
        public static void main(String[] args){
            TTDemo ttDemo = new TTDemo();
    
            // 获取String类型
            List<String> array = new ArrayList<>();
            array.add("aaa");
            array.add("bbb");
            String str =  ttDemo.getListFirst(array);
            System.out.println(str);
    
            // 获取Number类型
            List<Integer> nums = new ArrayList<>();
            nums.add(1);
            nums.add(2);
            Integer num = ttDemo.getListFirst(nums);
            System.out.println(num);
        }
    
        private <T> T getListFirst(List<T> data){
            if(data == null || data.size() == 0){
                return null;
            }
            return data.get(0);
        }
    }
    

    单独T的用法

    单独的T表示限制参数的类型。

    public class TDemo<T> {
        public static void main(String[] args){
    
            // 获取String类型
            TDemo<String> tDemo = new TDemo<>();  // 限制"T"为String类型
            List<String> array = new ArrayList<>();
            array.add("aaa");
            array.add("bbb");
            String str =  tDemo.getListFirst(array);
            System.out.println(str);
    
            // 获取Number类型
            TDemo<Integer> tDemo1 = new TDemo<>();  // 限制"T"为Integer类型
            List<Integer> nums = new ArrayList<>();
            nums.add(1);
            nums.add(2);
            Integer num = tDemo1.getListFirst(nums);
            System.out.println(num);
        }
    
        private T getListFirst(List<T> data){
            if(data == null || data.size() == 0){
                return null;
            }
            return data.get(0);
        }
    }
    
  • 相关阅读:
    libevent网络编程汇总
    LibEvent代码阅读--多缓冲区和零拷贝技术
    几个第三方库发图片
    Libevent使用例子,从简单到复杂
    CImage得到位图的大小
    从位图数据取得位图句柄
    BMP格式详解
    如何将内存中的位图数据绘制在DC上
    C++加载位图跟SOCKET通信的编写
    11235
  • 原文地址:https://www.cnblogs.com/vincenshen/p/10427838.html
Copyright © 2011-2022 走看看