Advertisement
desislava_topuzakova

04. Students

Oct 29th, 2022
1,338
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.14 KB | None | 0 0
  1. package students;
  2.  
  3. public class Student {
  4.     //полета -> характеристики -> име, фамилия, оценка
  5.     private String name;
  6.     private String lastName;
  7.     private double grade;
  8.  
  9.     //конструктор -> създаваме обекти от класа
  10.     public Student (String name, String lastName, double grade) {
  11.         //нов обект
  12.         this.name = name;
  13.         this.lastName = lastName;
  14.         this.grade = grade;
  15.     }
  16.  
  17.     //getter
  18.  
  19.     public double getGrade() {
  20.         return this.grade;
  21.     }
  22.  
  23.     @Override
  24.     public String toString() {
  25.         //"{first name} {second name}: {grade}"
  26.         return String.format("%s %s: %.2f", this.name, this.lastName, this.grade);
  27.     }
  28.  
  29.  
  30. }
  31.  
  32.  
  33. package students;
  34.  
  35. import java.util.ArrayList;
  36. import java.util.Comparator;
  37. import java.util.List;
  38. import java.util.Scanner;
  39.  
  40. public class Main {
  41.     public static void main(String[] args) {
  42.         Scanner scanner = new Scanner(System.in);
  43.         int countStudents = Integer.parseInt(scanner.nextLine());
  44.         List<Student> studentsList = new ArrayList<>();
  45.  
  46.         for (int studentCount = 1; studentCount <= countStudents; studentCount++) {
  47.             String data = scanner.nextLine();
  48.             //"Desislava Topuzakova 5.60"
  49.             String [] dataParts = data.split(" "); // ["Desislava", "Topuzakova", "5.60"]
  50.             String firstName = dataParts[0];
  51.             String lastName = dataParts[1];
  52.             double grade = Double.parseDouble(dataParts[2]);
  53.  
  54.             Student student = new Student(firstName, lastName, grade);
  55.             studentsList.add(student);
  56.         }
  57.  
  58.         //списък със студенти
  59.         //1. сортира по оценка
  60.         studentsList.sort(Comparator.comparing(Student::getGrade).reversed());
  61.         //2. отпечатвам всеки един студент
  62.         for (Student student : studentsList) {
  63.             //"{first name} {second name}: {grade}"
  64.             System.out.println(student); //обект се преобразува в текст чрез toString
  65.         }
  66.     }
  67. }
  68.  
  69.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement