玩转Java面试-为什么需要泛型?|天天短讯
2023-06-28 22:28:17    哔哩哔哩

1、适用于多种数据类型执行相同的代码

private static int add(int a, int b) {


(资料图)

(a + "+" + b + "=" + (a + b));

return a + b;

}

private static float add(float a, float b) {

(a + "+" + b + "=" + (a + b));

return a + b;

}

private static double add(double a, double b) {

(a + "+" + b + "=" + (a + b));

return a + b;

}

如果没有泛型,要实现不同类型的加法,每种类型都需要重载一个add方法;通过泛型,我们可以复用为一个方法:

2、泛型中的类型在使用时指定,不需要强制类型转换类型安全,编译器会检查类型

看下这个例子:

List list = new ArrayList();

("xxString");

(100d);

(new Person());

我们在使用上述list中,list中的元素都是Object类型(无法约束其中的类型),所以在取出集合元素时需要人为的强制类型转化到具体的目标类型,且很容易出现异常。

引入泛型,它将提供类型的约束,提供编译前的检查:

List<String> list = new ArrayList<String>();

// list中只能放String, 不能放其它类型的元素

小结

另外,如果对并发编程或者面试,想要了解更多请持续关注微信公众号:Java面试教程,关注更多有用的面试要点与技巧。

了解更多Java相关资料,请关注微信公众号:Java面试教程

回复: bbb20,获取更多Java资料与面试手册

回复: bbb19,获取Intellij idea最新版激活教程

让我们一起,玩转Java面试

关键词:

下一篇: 旋转编码器的原理和用途_旋转编码器工作原理 主要用途
上一篇: 最后一页