1.Deque
双向队列。可以实现Queue和Stack的功能。每个方法有两种形式,一种是在发生错误返回一个值(如null或false),一种是发生错误抛出异常,如下图所示,
实现Queue(FIFO)功能
实现Stack(LIFO)功能
2.SortedSet
E first();获得最小元素
E last();获得最大元素
SortedSet<E> headSet(E toElement);获得比toElemen小的所有元素
SortedSet<E> tailSet(E fromElement);获得所有大于等于fromElement的元素
SortedSet<E> subSet(E fromElement,E toElement);.获得所有大于等于fromElement而小于toElement的元素
3. Semaphore
该类通常是最为一个限制资源访问的记数的变量。
acquire()可以去请求获得资源,若没有可用资源就阻塞,该线程interrupted会取消阻塞
| |
acquire(int permits)acquireUninterrubtily()可以去请求获得资源,若没有可用资源就阻塞,该线程interrupted也不会取消阻塞
tryAcquire()尝试获得资源。没有也不会阻塞
tryAcquire(int permits)尝试获得permits个资源,没有不阻塞
release()释放一个资源,这时会释放一个正在阻塞的资源获取者。
release(int permits)释放permits个资源
hasQueuedThreads()是否有线程等待获取资源
本文深入探讨Java集合框架中Deque、SortedSet与Semaphore的使用与特性,详细介绍了它们作为队列、堆栈、并发控制工具的应用场景与API方法,帮助开发者更好地理解和利用这些集合类。
435

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



