黑马程序员技术交流社区

标题: 题目:编写程序,循环接收用户从键盘输入多个字符串,... [打印本页]

作者: 闭关修行小和尚    时间: 2015-12-30 22:09
标题: 题目:编写程序,循环接收用户从键盘输入多个字符串,...
    分析:
           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());  
        }  
*/
                // 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());  
        }  
        }


作者: 15931110616    时间: 2015-12-31 13:33
好高端的样子




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