package com.heima.test;
import java.util.Comparator;
import java.util.Scanner;
import java.util.TreeSet;
public class Test7 {
/**
* 从键盘接收一个字符串, 程序对其中所有字符进行排序,例如键盘输入: helloitcast程序打印:acehillostt
* 1,创建键盘录入对象Scanner;
* 2,将输入的字符串转成一个字符数组;
* 3,创建TreeSet集合对象,并对其所有字符进行排序,保留重复,使用比较器;
* 4,遍历字符数组,把字符数组存在集合中,
* 5,遍历集合,打印每一个字符;
*/
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一行字符串:");
String line = sc.nextLine();
char[] arr = line.toCharArray();
TreeSet<Character> ts = new TreeSet<>(new Comparator<Character>() {
@Override
public int compare(Character c1, Character c2) {
int num = c1 - c2; // 可以改为Int num = c1.equals(c2)吗?;
return num == 0?1:num;
}
});
for (char c : arr) {
ts.add(c);
}
for (Character c : ts) {
System.out.print(c);
}
}
} |
|