使用以下Java代码是否可靠:
TreeSet<String> ts = new TreeSet<String>();
String stringAtIndexThree = Arrays.<Tag> asList(list.toArray(new Tag[list.size()])).get(3);
将对象放在第三个索引处(假设ts.size() > 3
)?
也就是说,如果没有对集合进行任何修改,TreeSet<T>#toArray(T[])
总会以相同的顺序返回元素吗?
如果重要,那就是ComboBoxModel
实现应该只有唯一的元素(最好的,我会使用不存在的UniqueList
)。
谢谢!
WC
答案 0 :(得分:2)
如果没有对集合进行修改,TreeSet#toArray(T [])是否总是以相同的顺序返回元素?
绝对 - TreeSet
以相同的排序顺序返回元素。当然,在实现可比性时,你的元素应该很好地发挥作用,以使排序顺序符合你的预期。