Aks*_*aik 2 java collections interface
正如所建议的那样,我几乎无处不在,特别是在使用集合时.
// Using interfaces
List<Integer> list = new LinkedList<Integer>();
((LinkedList) list).offerFirst(num);
//Using concrete class
LinkedList list = new LinkedList<Integer>();
list.offerFirst(num);
Run Code Online (Sandbox Code Playgroud)
在第一种方法编译器提供警告甚至语法似乎很麻烦.
warning: [unchecked] unchecked call to offerFirst(E) as a member of the raw type LinkedList
Run Code Online (Sandbox Code Playgroud)
如果您正在使用该offerFirst方法,也许您应该编程到Deque接口(代表双端队列)而不是List接口:
Deque<Integer> deque = new LinkedList<Integer>();
deque.offerFirst(num);
Run Code Online (Sandbox Code Playgroud)