veronikaaa86

06. Students 2.0

Jun 22nd, 2023
459
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.02 KB | None | 0 0
  1. package objectAndClasses;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.List;
  5. import java.util.Scanner;
  6.  
  7. public class P06Students2 {
  8.     static class Student {
  9.         String firstName;
  10.         String lastName;
  11.         String age;
  12.         String town;
  13.  
  14.         public Student (String firstName, String lastName, String age, String town) {
  15.             this.firstName = firstName;
  16.             this.lastName = lastName;
  17.             this.age = age;
  18.             this.town = town;
  19.         }
  20.  
  21.         public String getFirstName() {
  22.             return this.firstName;
  23.         }
  24.  
  25.         public String getLastName() {
  26.             return this.lastName;
  27.         }
  28.  
  29.         public String getAge() {
  30.             return this.age;
  31.         }
  32.  
  33.         public void setAge(String age) {
  34.             this.age = age;
  35.         }
  36.  
  37.         public String getTown() {
  38.             return this.town;
  39.         }
  40.  
  41.         public void setTown(String town) {
  42.             this.town = town;
  43.         }
  44.     }
  45.  
  46.     public static void main(String[] args) {
  47.         Scanner scanner = new Scanner(System.in);
  48.  
  49.         List<Student> studentsList = new ArrayList<>();
  50.         String input = scanner.nextLine();
  51.         while (!input.equals("end")) {
  52.             String[] studentsDataArr = input.split(" ");
  53.             String firstName = studentsDataArr[0];
  54.             String lastName = studentsDataArr[1];
  55.             String age = studentsDataArr[2];
  56.             String town = studentsDataArr[3];
  57.  
  58.             if (isStudentExisting(studentsList, firstName, lastName)) {
  59.                 int index = getExistingIndex(studentsList, firstName, lastName);
  60.                 studentsList.get(index).setAge(age);
  61.                 studentsList.get(index).setTown(town);
  62.             } else {
  63.                 Student currentStudent = new Student(firstName, lastName, age, town);
  64.                 studentsList.add(currentStudent);
  65.             }
  66.  
  67.             input = scanner.nextLine();
  68.         }
  69.  
  70.         String homeTown = scanner.nextLine();
  71.         for (Student student : studentsList) {
  72.             if (homeTown.equals(student.getTown())) {
  73.                 System.out.printf("%s %s is %s years old%n", student.getFirstName(), student.getLastName(), student.getAge());
  74.             }
  75.         }
  76.     }
  77.  
  78.     public static int getExistingIndex (List<Student> studentsList, String firstName, String lastName) {
  79.         int index = -1;
  80.         for (int i = 0; i < studentsList.size(); i++) {
  81.             Student student = studentsList.get(i);
  82.             if (student.getFirstName().equals(firstName) && student.getLastName().equals(lastName)) {
  83.                 index = i;
  84.             }
  85.         }
  86.         return index;
  87.     }
  88.  
  89.     static boolean isStudentExisting(List<Student> studentsList, String firstName, String lastName) {
  90.         for (Student student : studentsList) {
  91.             if (student.getFirstName().equals(firstName) && student.getLastName().equals(lastName)) {
  92.                 return true;
  93.             }
  94.         }
  95.         return false;
  96.     }
  97. }
  98.  
Add Comment
Please, Sign In to add comment