Untitled
unknown
java
3 years ago
3.2 kB
5
Indexable
package com.company; import java.io.BufferedReader; import java.io.FileReader; import java.util.*; abstract class Person{ public String name; public int age; Person(String name, int age){ this.age=age; this.name=name; } abstract void typeofPerson(); } class Student extends Person{ private double cgpa; private String id; Student(String name, int age, double cgpa, String id) { super(name, age); this.cgpa=cgpa; this.id=id; } String getStudentname() { String name = super.name; return name; } @Override void typeofPerson() { System.out.println("This is a Student class"); } public static Comparator<Student> StuNameComparator = new Comparator<Student>() { public int compare(Student s1, Student s2) { String StudentName1 = s1.getStudentname().toLowerCase(); String StudentName2 = s2.getStudentname().toLowerCase(); return StudentName1.compareTo(StudentName2); }}; @Override public String toString() { return "[ ID= " + id + ", name= " + name + ", cgpa= " + cgpa + ", age= "+age+"]"; } } class Teacher extends Person{ private int salary; Teacher(String name, int age, int salary) { super(name, age); this.salary=salary; } public int getSalary() { return salary; } public void setSalary(int salary) { this.salary = salary; } @Override void typeofPerson() { System.out.println("This is a Teacher Class"); } public static Comparator<Teacher> Com_Salary = new Comparator<Teacher>() { public int compare(Teacher s1, Teacher s2) { int sal1 = s1.getSalary(); int sal2 = s2.getSalary(); return sal1-sal2; }}; @Override public String toString() { return "[ Name=" + name + ", Age=" + age + ", Salary=" + salary + "]"; } } class Main{ public static void main(String args[]) throws Exception { FileReader fr=new FileReader("D:\\people.txt"); BufferedReader br=new BufferedReader(fr); ArrayList<Student>s_list=new ArrayList<Student>(); ArrayList<Teacher>t_list=new ArrayList<Teacher>(); String i; while(((i=br.readLine())!=null)){ String Words[] = i.split(","); if(Words[0].equals("s")) { s_list.add(new Student(Words[1],Integer.parseInt(Words[2]),Double.parseDouble(Words[3]),Words[4])); } else if(Words[0].equals("t")){ t_list.add(new Teacher(Words[1],Integer.parseInt(Words[2]),Integer.parseInt(Words[3]))); } } Collections.sort(s_list, Student.StuNameComparator); Collections.sort(t_list, Teacher.Com_Salary); for(Student str: s_list){ System.out.println(str); } for(Teacher str2: t_list){ System.out.println(str2); } br.close(); fr.close(); } }
Editor is loading...