黑马程序员技术交流社区
标题: 重写Treeset中的方法 [打印本页]
作者: boom_pm2.5 时间: 2016-11-19 23:55
标题: 重写Treeset中的方法
上干货
----------------------------------------------------------------------------------------------------------------------------
题文要求:
/*键盘录入一个字符串, 把这个字符串转成大写的,然后对这个字符串中的所有字符进行排序,
要求按字典顺序反向排序,并且保留重复.
*/
------------------------------------------------------------------------------------------------------------------------------
代码区:
import java.util.Comparator;
import java.util.Scanner;
import java.util.TreeSet;
public class HomeWorke04 {
public static void main(String[] args) {
//键盘录入
Scanner sc = new Scanner(System.in);
System.out.println("输入一个字符串:");
String str = sc.nextLine();
//转换成为大写.
String str1 =str.toUpperCase();
char [] arr = str1.toCharArray();
//要求排序,保留重复 用 TreeSet .
TreeSet<Character> ts = new TreeSet<>(new Comparator<Character>() {
@Override
public int compare(Character o1, Character o2) {
int num = o2.compareTo(o1);
return num==0? 1:num;
}
});
for (Character character : arr) {
ts.add(character);
}
System.out.println(ts);
}
}
----------------------------------------------------------------------------------------------------------------------------------------------------
总结:
使用到了匿名内部类,
然后使用到了treeset这个集合,
然后就是从写了 compare方法,
主要难点在于从新写compare方法,
然后通过return的值,在treeset中排列不同,
最终得到结果.
作者: boom_pm2.5 时间: 2016-11-19 23:57
夜已深,,,
赶紧睡觉了,
明天还要上课....
作者: 凉薄繁华丶悲伤 时间: 2016-11-20 11:58
boom_pm2.5 发表于 2016-11-19 23:57
夜已深,,,
赶紧睡觉了,
明天还要上课....
我擦,一个班的,那个点招编程出哪里的题,了解吗?不知道重点复习哪里
作者: boom_pm2.5 时间: 2016-11-20 23:35
不太清楚
作者: chenyanwei6 时间: 2016-11-20 23:54
明天就开始学习了
作者: chenyanwei6 时间: 2016-11-20 23:55
明天就可以开始学习了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |