- /**
- * 7、 编写程序,循环接收用户从键盘输入多个字符串,直到输入“end”时循环结束,
- * 并将所有已输入的字符串按字典顺序倒序打印。
- */
- import java.util.*;
- import java.io.*;
- class Test7
- {
- public static void main(String[] args) throws IOException
- {
- //按比较器方法比较
- TreeSet<String> ts = new TreeSet<String>(new NewSort() );
- //建立键盘录入的输入流
- BufferedReader br =
- new BufferedReader(new InputStreamReader(System.in));
- //讲录入字符存入集合
- while(true){
- String str = br.readLine();
- if (str.equals("end"))
- break;
- ts.add(str);
- }
- br.close();
- //迭代打印集合
- Iterator<String> it = ts.iterator();
- while(it.hasNext()){
- System.out.println(it.next());
- }
-
- }
- }
- //实现比较器
- class NewSort implements Comparator<String>{
- public int compare(String s1,String s2){
- //因为小写都大于大写,不符合字典规律,所以如果是字母全部转换为大写再比较
- return s2.toUpperCase().compareTo(s1.toUpperCase());
- }
- }
复制代码
|
|