原来
Set<String> new = new HashSet<>();
这句代码里面就有HashMap
Set里面的add方法调用了Map里面的put方法。
这里是可以的。
Queue<String>q=new LinkedList<>();
其中的add方法出错时抛出异常,offer方法返回false。
remove() poll()
element() peek()
都是类似的道理。
PriorityQueue
其中如果传入的对象是自定义的话,可以重写另一个类,这样在实现的时候就可以在另一个部分写下代码了。
implements
class UserComparator implements Comparator<User> {
public int compare(User u1, User u2) {
//写下相等,小于,大于的时候应该返回的值。
}
}
Deque
双端队列在使用的过程中只是用offerFirst() offerLast() pollFirst() pollLast() peekFirst() peekLast()
LinkedList这个接口实现了好多东西,即是 List 还是 Queue 还是 Deque
一般都写
Deque<String> dq=new LinkedList<>();
Stack
java遗留类名字就叫Stack,出于兼容性考虑,所以没办法创建Stack接口,只能用Deque接口来“模拟”一个Stack了。
其实用 Stack也行:
Stack<String> s = new Stack<>():
Collections
Collections提供了一系列方法来创建空集合:
创建空List:List emptyList()
创建空Map:Map<K, V> emptyMap()
创建空Set:Set emptySet()
要注意到返回的空集合是不可变集合,无法向其中添加或删除元素。

被折叠的 条评论
为什么被折叠?



