return o1.compareTo(o2) == 0 ? 0 : o1.compareTo(o2); //o1与o2相等时不添加,不等时就直接按照相比较的结果存入即可。如果写死成1,那也就是说不管o1大还是o2大,都是按照o1在前o2在后的顺序存储
回根的落叶 发表于 2016-9-21 17:19
字符串去除重复字母,并且按照字典顺序输出。不需要传入比较器。直接使用TreeSet集合就可以了。如果实在要 ...
import java.util.LinkedHashSet;
import java.util.Set;
//需求:给一个字符串去重,并且不改变元字符串的顺序。
//我的程序是:
public class Demo01 {
public static void main(String[] args) {
String s ="abcacd";
Set<Character> s1 = new LinkedHashSet<Character>();
char[] arr = s.toCharArray();//将字符串转为字符数组
for (char c : arr) {
s1.add(c);
}
System.out.println(s1);
}
}
//打印输出结果是:[a, b, c, ,d]
回根的落叶 发表于 2016-9-21 17:19
字符串去除重复字母,并且按照字典顺序输出。不需要传入比较器。直接使用TreeSet集合就可以了。如果实在要 ...
mqxin 发表于 2016-9-21 22:57
用LinkedHashSet能一步到位,去重且不打乱顺序
周军福 发表于 2016-9-22 23:40
可以了11!
Array先生 发表于 2016-9-23 07:44
[mw_shl_code=java,true]import java.util.LinkedHashSet;
import java.util.Set;
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) | 黑马程序员IT技术论坛 X3.2 |