泛型的细节

1.泛型中不能写基本数据类型

2.指定泛型后,传递数据时,可以传入该类型或者其子类类型

3.如果不写泛型,默认时Object类型

java 复制代码
public class MyArrayList<E> {
    Object[] obj = new Object[10];
    int size;
    /*
    * E:表示不确定的数据类型
    * e:形参的名字,变量名字
    * */
    public boolean add(E e){
        obj[size] = e;
        size++;
        return true;
    }
    public E get(int index){
        return (E)obj[index];
    }

    @Override
    public String toString() {
        return Arrays.toString(obj);
    }
}
java 复制代码
public class Myttest {
    static void main() {
        MyArrayList<String> list = new MyArrayList<>();
        list.add("aaa");
        list.add("bbb");
        System.out.println(list);


        MyArrayList<Integer> list2 = new MyArrayList<>();
        list2.add(1);
        list2.add(2);
        System.out.println(list2);
    }
}

泛型方法的定义及使用:

java 复制代码
import java.util.ArrayList;

public class Utils {
    private Utils(){}

    public static<E> void addAll(ArrayList<E> list,E...e){
        for (E element : e) {
            list.add(element);
        }

    }
}
java 复制代码
import java.util.ArrayList;

public class UT {
    static void main() {
        ArrayList<Integer> list = new ArrayList<>();
        Utils.addAll(list,1,2,3,4);
        System.out.println(list);
    }
}

泛型接口的定义及使用:

1.

2.接口直接写入特定的泛型(已知类型)

相关推荐
华仔啊18 小时前
Stream 代码越写越难看?JDFrame 让 Java 逻辑回归优雅
java·后端
ray_liang18 小时前
用六边形架构与整洁架构对比是伪命题?
java·架构
Ray Liang19 小时前
用六边形架构与整洁架构对比是伪命题?
java·python·c#·架构设计
Java水解20 小时前
Java 中间件:Dubbo 服务降级(Mock 机制)
java·后端
SimonKing1 天前
OpenCode AI辅助编程,不一样的编程思路,不写一行代码
java·后端·程序员
FastBean1 天前
Jackson View Extension Spring Boot Starter
java·后端
Seven971 天前
剑指offer-79、最⻓不含重复字符的⼦字符串
java
皮皮林5511 天前
Java性能调优黑科技!1行代码实现毫秒级耗时追踪,效率飙升300%!
java
冰_河1 天前
QPS从300到3100:我靠一行代码让接口性能暴涨10倍,系统性能原地起飞!!
java·后端·性能优化