andresnogales

Main6.java

Sep 15th, 2021 (edited)
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.81 KB | None | 0 0
  1. import java.time.LocalDate;
  2. import java.util.ArrayList;
  3.  
  4. public class Main6 {
  5.  
  6.     public static void main(String[] args){
  7.        
  8.         ArrayList<Person> persons = new ArrayList<Person>();
  9.        
  10.         String[] options = {
  11.                 "Ingresar datos de personas",
  12.                 "Generar varias personas aleatorias",
  13.                 "Mostrar personas",
  14.                 "Mostrar según rango de años de nacimiento",
  15.                 "Eliminar datos cargados"
  16.                 };
  17.        
  18.         Menu menu = new Menu(options);
  19.        
  20.         boolean repeat = true;
  21.         while(repeat) {
  22.            
  23.             int option = menu.getOption();
  24.                                    
  25.             switch(option){
  26.            
  27.             case 1:            
  28.                 do {
  29.                     Person person = inputPerson();
  30.                     persons.add(person);
  31.                     System.out.println("\nPersona agregada");
  32.                 }while(Helper.yesOrNo("Continuar ingresando datos?") == 'S');                                                      
  33.                 break;
  34.  
  35.             case 2:
  36.                 int n = Helper.getPositiveInt("Cuantos registros quiere generar? : ");
  37.                 for (int i = 0; i < n; i++) {
  38.                     Person onePersonRandom = TestData.generatePerson();
  39.                     persons.add(onePersonRandom);
  40.                     System.out.println(onePersonRandom.toString());
  41.                 }              
  42.                 System.out.println("\nPersonas agregadas: " + n);
  43.                 break;
  44.             case 3:
  45.                 if(persons.size() == 0) {
  46.                     System.out.println("No hay personas cargadas");
  47.                 }
  48.                 else ArrayUtils.print(persons);
  49.                 break; 
  50.  
  51.             case 4:
  52.                 int yearStart = Helper.getYear("Año con el que empieza el rango: ");
  53.                 int yearEnd = Helper.getYear("Año con el que termina el rango: ");
  54.                
  55.                 if(yearStart > yearEnd) {
  56.                     System.out.println("Rango de años inválido");
  57.                     break;
  58.                 }
  59.                 int countPersons = 0;
  60.                 for(Person person : persons) {
  61.                     if(person.bornInYearsRange(yearStart, yearEnd)) {
  62.                         System.out.println(person.toString());
  63.                         countPersons++;
  64.                     }
  65.                 }
  66.                 System.out.println("\nPersonas dentro del rango de años: " + countPersons);
  67.                 break;
  68.  
  69.             case 5:
  70.                 if(persons.size() == 0) {
  71.                     System.out.println("No había personas cargadas");
  72.                 }  
  73.                 else {
  74.                     persons.clear();
  75.                     System.out.println("Datos de personas eliminados");
  76.                 }
  77.                 break;
  78.             case 0:
  79.                 System.out.println("Fin del programa");
  80.                 repeat = false;
  81.                 continue;
  82.             }
  83.             Helper.pressEnterKeyToContinue();  
  84.         }
  85.     }
  86.    
  87.     public static Person inputPerson() {
  88.        
  89.         String firstName = Helper.getStringAlphabetic("Nombre: ");
  90.         String lastName = Helper.getStringAlphabetic("Apellido: ");
  91.         Integer dni = Helper.getInt("Dni");
  92.         LocalDate birthDate = Helper.getLocalDate("Fecha de nacimiento: ");
  93.  
  94.         String cellphone = Helper.getCellphone("Número Celular (sin +54 y sin el 15): ");
  95.         ArrayList<String> emails = new ArrayList<String>();
  96.         do {
  97.             emails.add(Helper.getEmail("E-mail: "));
  98.         }while(Helper.yesOrNo("Quiere agregar otro email?: ") == 'S');
  99.                
  100.         return new Person(firstName, lastName, dni, birthDate, emails, cellphone);
  101.     }
  102. }
  103.  
Add Comment
Please, Sign In to add comment