黑马程序员技术交流社区

标题: 今天的点招题 [打印本页]

作者: dd6434541    时间: 2016-5-10 23:38
标题: 今天的点招题

/*
* 3. 在项目的根目录下有个number.txt, 文件中存放的内容为:           3
4
7
4
9
(1)将文件中所有的元素都放在list中
(2)将list中重复的元素删除
(3)将集合中的元素放入到数组中, 并按照从大到小的顺序排序后输出
将list中所有的元素用两种方式打印出来
*/
public class Test3_A {
        public static void main(String[] args) throws Exception {
                List<Integer> list = new ArrayList<>();
                // 1将文件中所有的元素都放在list中
                BufferedReader br = new BufferedReader(new FileReader("number.txt"));

                String b;
                while ((b = br.readLine()) != null) {
                        int i = Integer.parseInt(b);
                        list.add(i);
                }
                br.close();

                // 2将list中重复的元素删除
                List<Integer> newList = new ArrayList<>();
                for (int i = 0; i < list.size(); i++) {
                        if (newList.contains(list.get(i))) {
                                list.remove(i);
                        } else {
                                newList.add(list.get(i));
                        }
                }

                // 3将集合中的元素放入到数组中, 并按照从大到小的顺序排序后输出
        int[] arr = new int[list.size()];
        /*                for (int i = 0; i < list.size(); i++) {
                        arr[i] = list.get(i);
                }
                Arrays.sort(arr);
               
                for (int i = arr.length - 1; i >= 0; i--) {
                        System.out.println(arr[i]);
                }*/
               
               
                for (int i = 0; i < arr.length; i++) {
                        for (int j = i+1; j < arr.length; j++) {
                                if( arr[i] > arr[j]) {
                                        int temp = arr[j];
                                        arr[j] = arr[i];
                                        arr[i] = temp;
                                }
                        }
                }
                // 4将list中所有的元素用两种方式打印出来
                // 1
                for (int x : list) {
                        System.out.println(x);
                }
                // 2
                Iterator<Integer> it = list.iterator();
                while (it.hasNext()) {
                        int x = it.next();
                        System.out.println(x);
                }
        }
}

作者: zlf1991312    时间: 2016-5-10 23:51
就一个题啊?
作者: 随风而逸    时间: 2016-5-10 23:54
怎么就一道  总共几道? 都是那个方面的
作者: w125621538    时间: 2016-5-11 00:09
.......都好慌啊
作者: guolingqiang    时间: 2016-5-11 00:27
谢谢.......
作者: taoshan    时间: 2016-5-11 08:23
赞一下,支持一下。
作者: woshijingke    时间: 2016-5-11 11:36
了解,但是怎么就一个题
作者: Mr.Wu    时间: 2016-5-11 11:41
谢谢分享
作者: xiaogui    时间: 2016-5-11 12:18
这道题用treeset集合不是可以优化一下?不知道这样做是否符合题的要求?
作者: 18573626921    时间: 2016-5-11 12:43
赞一个··谢谢分享
作者: 汪泽蓉    时间: 2016-5-11 12:47
这个可以啊,点招题
作者: 哥其实不坏    时间: 2016-5-11 17:43
大赞,感谢分享啊。。。
作者: HeiMaZ    时间: 2016-5-11 18:07
好长...................有点晕




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