博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
爪哇国新游记之八----读写文件及数组排序
阅读量:6644 次
发布时间:2019-06-25

本文共 3992 字,大约阅读时间需要 13 分钟。

动态数组排序:

List
ls=new ArrayList
(); ls.add(-1); ls.add(11); ls.add(100); ls.add(8); ls.add(2); ls.add(10); Collections.sort(ls);// 升序排列 System.out.print("排序后结果是:"); for(int i:ls){ System.out.print(i+","); } System.out.println(); Collections.reverse(ls);// 颠倒 System.out.print("颠倒后结果是:"); for(int i:ls){ System.out.print(i+","); }

 

自定义排序规则的例子:

public class Emp  implements Comparable{    private int age;    private int salary;    private String name;        public Emp(String name,int age,int salary){        this.name=name;        this.age=age;        this.salary=salary;    }        public String toString(){        StringBuilder sb=new StringBuilder();                sb.append("姓名:"+name);        sb.append(" 年龄:"+age);        sb.append(" 薪水:"+salary);                return sb.toString();    }        @Override    public int compareTo(Object o) {        Emp another = (Emp) o;                return this.name.compareTo(another.name);                /*if(this.salary!=another.salary){            return this.salary-another.salary;        }else{            return this.age-another.age;        }*/    }            public static void main(String[] args){        List
ls=new ArrayList
(); ls.add(new Emp("Andy",20,4500)); ls.add(new Emp("Cdins",30,10000)); ls.add(new Emp("Douasa",40,30000)); ls.add(new Emp("cahsa",20,5000)); ls.add(new Emp("Hewqw",30,15000)); ls.add(new Emp("Xawew",60,30000)); ls.add(new Emp("Baod",30,30000)); Collections.sort(ls);// 按compareTo中规则排列 System.out.println("排序后结果是:"); for(Emp i:ls){ System.out.println(i.toString()); } }}

将员工信息写入文件的类

public class WriteSample{    public static void main(String[] args){        try {            BufferedWriter out = new BufferedWriter(new FileWriter("c://write.txt"));                        out.write("张三 23 男 3500\r\n");            out.write("李四 24 女 13500\r\n");            out.write("王五 25 男 1500\r\n");            out.write("赵六 93 女 1300");                        out.close();        } catch (IOException e) {            e.printStackTrace();        }    }}

将员工信息读出文件并进行排序的类

import java.io.BufferedReader;import java.io.FileReader;import java.io.IOException;import java.util.ArrayList;import java.util.Collections;import java.util.List;class Emp  implements Comparable{    String name;    int age;    String sex;    int salary;        public Emp(String line){        String[] arr=line.split(" ");        name=arr[0];        age=Integer.parseInt(arr[1]);        sex=arr[2];        salary=Integer.parseInt(arr[3]);    }        public String toString(){        StringBuilder sb=new StringBuilder();                sb.append("姓名:"+name);        sb.append(" 年龄:"+age);        sb.append(" 性别:"+sex);        sb.append(" 薪水:"+salary);                return sb.toString();    }        @Override    public int compareTo(Object o) {        Emp another = (Emp) o;                return this.salary-another.salary;//this.name.compareTo(another.name);                /*if(this.salary!=another.salary){            return this.salary-another.salary;        }else{            return this.age-another.age;        }*/    }}public class ReadSample{    public static void main(String[] args){        try {            List
ls=new ArrayList
(); BufferedReader in = new BufferedReader(new FileReader("c://write.txt")); String str; while ((str = in.readLine()) != null) { ls.add(new Emp(str)); } in.close(); Collections.sort(ls); for(Emp e:ls){ System.out.println(e); } } catch (IOException e) { } }}

转载地址:http://njovo.baihongyu.com/

你可能感兴趣的文章
u盘删除的文件能恢复吗?如何恢复
查看>>
苹果手机日历误删怎样恢复?恢复的小技巧
查看>>
mybatis结合分页的使用及解析.
查看>>
全新的智能呼叫中心客户服务体系,企业管理者都应该知道的事
查看>>
【干货】气体分析仪与气体检测仪的区别
查看>>
C语言位操作源码片段
查看>>
查看ubuntu32/64位的方法及其版本信息
查看>>
awk工具---待完善
查看>>
javascript—cookie操作
查看>>
解决Cadillac atsl vin码不一致问题
查看>>
VXLAN 概念(Part I) - 每天5分钟玩转 OpenStack(108)
查看>>
CSS3的伪类选择器;:hover选择器:active选择器和:focus选择器
查看>>
基于NIO的消息路由的实现(二)通讯协议
查看>>
数学:知道n边形各顶点坐标,求面积
查看>>
60幅精美绝伦的绘景(Matte Paintings)作品欣赏(下篇)
查看>>
NSDictionary不可变字典集合
查看>>
linux05-虚拟机配置,磁盘管理,mount
查看>>
zookeeper.jar使用(一)
查看>>
解析 Linux 中的 VFS 文件系统机制
查看>>
使用ILMerge合并多个DLL
查看>>