作者superston (有点寂寞 有点空)
看板java
标题[问题] 关於泛型 lists.newArrayList
时间Tue Jun 2 14:13:41 2015
Lists 是google 开发的一个类别
其中有一个static method source Code 如下
public static <E> ArrayList<E> newArrayList() {
return new ArrayList<E>();
}
使用上如果我需要宣告一个
通常会这样写
List<myObj> myList = new ArrayList<myObj>();
但使用 Lists google 开发的API 只需要这样写
List<myObj> myList = Lists.newArrayList(); //就可以了
执行到这段时 会自动配好型态指定为 myObj的list给myList
也就是说可以让程式码看起来乾净不少。
这边想请教一下 关於这个method 泛型的知识
public static <E> ArrayList<E> newArrayList()
有两个<E> 我想知道 第一个 <E> 代表的意思是??
感谢
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 42.72.134.59
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/java/M.1433225623.A.EBE.html
1F:→ ssccg: 定义泛型参数,後面是把这个参数用在回传型别里 06/02 14:24
2F:→ ssccg: 用这个method的时候就要带入一个实际型别给这个参数,但是 06/02 14:26
3F:→ ssccg: compiler可以从用到的地方推出带入的型别时可省略 06/02 14:27
4F:推 LaPass: 现在可以用这样写 new ArrayList<>(); 06/02 14:33
5F:→ superston: 谢谢解惑,所以是compiler帮忙做判断的.... 06/02 15:55