当前位置: 代码迷 >> J2SE >> java set小疑点
  详细解决方案

java set小疑点

热度:23   发布时间:2016-04-24 00:53:17.0
java set小问题,在线等
Set<String> set = new HashSet<String>();
 set.add("Tom");
Set<String> tree = new TreeSet<String>(set);

java中,第三行中,最后 new TreeSet<String>(set);为什么可加(set) 这是什么写法,怎么用呀,

------解决方案--------------------
TreeSet这个构造方法的源码
Java code
 public TreeSet(Collection<? extends E> c) {        this();        addAll(c);    }
------解决方案--------------------
相当于把set里面的所有对象拿出来,Copy到treeSet里面
------解决方案--------------------
就是把你之前创建的set 放到tree里面了
------解决方案--------------------
探讨
相当于把set里面的所有对象拿出来,Copy到treeSet里面

------解决方案--------------------
这种情况,最好看下API或者找一下源码。

TreeSet() 
构造一个新的空 set,该 set 根据其元素的自然顺序进行排序。 
TreeSet(Collection<? extends E> c) 
构造一个包含指定 collection 元素的新 TreeSet,它按照其元素的自然顺序进行排序。 
TreeSet(Comparator<? super E> comparator) 
构造一个新的空 TreeSet,它根据指定比较器进行排序。 
TreeSet(SortedSet<E> s) 
构造一个与指定有序 set 具有相同映射关系和相同排序的新 TreeSet。 

帖子中的是四个构造函数中的一个。
  相关解决方案