黑马程序员技术交流社区

标题: 互相学习 [打印本页]

作者: 刘德坤    时间: 2015-10-8 22:28
标题: 互相学习
package com.itheima;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;

/*
  题目:编写程序,循环接收用户从键盘输入多个字符串,直到输入“end”时循环结束,并将所有已输入的字符串按字典顺序倒序打印。
    分析:
           1.字符串本身提供的比较性为字典顺序,可以使用工具类Collections.reverse()方法将原来的比较性反序。
                     但也可以自定一个比较器,让集合自身必备比较性;
     2.键盘录入的是字节流,操作的是字符流,可以使用转换流,并加入缓冲区技术,提高效率;
     3.录入的字符串存储到ArrayList集合中;
     4.使用Collections工具类给ArrayList中元素排序
     5.打印ArrayList集合中的元素
    步骤:
           1.List<String> list = new ArrayList<String>();
           2.BufferedReader bufr = new BufferedReader(new InputStreamReader(System.in));
           3.list.add(line);
           4.Collections.sort(list, Collections.reverseOrder());
           5.Iterator<String> it = list.iterator();  
        while(it.hasNext()){  
            System.out.println(it.next());  
        }  
*/
public class Test16 {
        public static void main(String[] args) {
                // TODO Auto-generated method stub
                // 1、定义一个ArrayList集合  
        List<String> list = new ArrayList<String>();  
  
        // 键盘录入字符串,转换流,缓冲区  
        System.out.println("请输入一些字符或者字符串, end 结束!");
        BufferedReader bufr = new BufferedReader(new InputStreamReader(System.in));  
        String line = null;  
        try {  
            while ((line = bufr.readLine()) != null) {  
                if ("end".equals(line))  
                    break;  
                // 往ArrayList集合中添加元素  
                list.add(line);  
            }  
        } catch (IOException e) {  
            throw new RuntimeException("IO异常");  
        }  
        // 给ArrayList排序,字典倒序  
        Collections.sort(list, Collections.reverseOrder());  
        // 打印集合  
        Iterator<String> it = list.iterator();  
        while(it.hasNext()){  
            System.out.println(it.next());  
        }  
        }
}





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2