Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.ArrayList;
- import java.time.*;
- /**
- * Write a description of class ListaTareas here.
- *
- * @author (your name)
- * @version (a version number or a date)
- */
- public class ListaTareas {
- private ArrayList<Tarea> listaDeTareas;
- private int id_count;
- public ListaTareas(){
- listaDeTareas = new ArrayList<Tarea>();
- id_count =10;
- }
- private int getPositionById(int id) {
- int posicion = -1;
- for (Tarea tarea : listaDeTareas) {
- if (tarea.getId() == id){
- posicion = listaDeTareas.indexOf(tarea);
- }
- }
- return posicion;
- }
- private boolean idExists(int id){
- boolean id_found = false;
- int posicion = 0;
- while (posicion < listaDeTareas.size() && !id_found) {
- if (listaDeTareas.get(posicion).getId() == id) {
- id_found = true;
- }
- posicion++;
- }
- return id_found;
- }
- public void addTarea(String descripcionTarea){
- if (id_count <= 99) {
- Tarea tarea = new Tarea(descripcionTarea, id_count);
- listaDeTareas.add(tarea);
- id_count++;
- }
- }
- public void mostrarTareas(){
- for (Tarea tarea : listaDeTareas) {
- System.out.println(tarea);
- }
- }
- public void marcarComoCompletada(int id){
- if (idExists(id)){
- listaDeTareas.get(getPositionById(id)).marcarComoCompletada();
- }
- }
- public void mostrarCoincidentes(String textoABuscar) {
- int posicion = 0;
- while (posicion < listaDeTareas.size()) {
- Tarea tareaActual = listaDeTareas.get(posicion);
- if (tareaActual.getDescripcion().contains(textoABuscar)) {
- System.out.println(tareaActual.toString());
- }
- posicion++;
- }
- }
- public void eliminarTarea(int id) {
- if (idExists(id)){
- listaDeTareas.remove(getPositionById(id));
- }
- }
- public void establecerNuevaPrioridad (int id, int prioridad) {
- if (idExists(id)) {
- if(prioridad >= 0 && prioridad <= 5){
- listaDeTareas.get(getPositionById(id)).cambiarPrioridad(prioridad);
- }
- }
- }
- public void setFechaVencimiento(int id, int anio, int mes, int dia) {
- if (idExists(id)) {
- listaDeTareas.get(getPositionById(id)).establecerFechaVencimiento(anio, mes, dia);
- }
- }
- public void mostrarHoy() {
- LocalDate diaHoy = LocalDate.now();
- for (Tarea tarea: listaDeTareas) {
- if (tarea.verFechaVencimiento() != null) {
- if (tarea.verFechaVencimiento().isEqual(diaHoy)){
- System.out.println(tarea.toString());
- }
- }
- }
- }
- public void mostrarVencidas() {
- LocalDate diaHoy = LocalDate.now();
- for(Tarea tarea : listaDeTareas) {
- if(tarea.verFechaVencimiento() != null) {
- if (tarea.verFechaVencimiento().isBefore(diaHoy)) {
- System.out.println(tarea.toString());
- }
- }
- }
- }
- public void mostrarMayorPrioridad() {
- int mayorPrioridad = 0;
- for (Tarea tarea : listaDeTareas) {
- if (tarea.getPrioridad() > mayorPrioridad) {
- mayorPrioridad = tarea.getPrioridad();
- }
- }
- int number = 1;
- for (Tarea tarea : listaDeTareas) {
- if (tarea.getPrioridad() == mayorPrioridad) {
- System.out.println(number +" "+ tarea.toString());
- number++;
- }
- }
- }
- public void mostrarPrioridad2() {
- if (listaDeTareas.size() > 0) {
- Tarea lastTarea = listaDeTareas.get(0);
- for (Tarea tarea : listaDeTareas) {
- if (tarea.getPrioridad() >= lastTarea.getPrioridad()){
- lastTarea = tarea;
- }
- }
- System.out.println(lastTarea);
- }
- }
- public int tareaMasViejaPendiente() {
- int pos_buscada = -1;
- boolean buscando = true;
- int pos = 0;
- while(pos < listaDeTareas.size() && buscando){
- Tarea tarea = listaDeTareas.get(pos);
- if(!tarea.estaTerminada()){
- pos_buscada = pos;
- buscando = false;
- }
- pos++;
- }
- return pos_buscada;
- }
- public int numeroTareasSinTerminar() {
- int no_terminadas = 0;
- for(Tarea tarea : listaDeTareas) {
- if (!tarea.estaTerminada()){
- no_terminadas++;
- }
- }
- return no_terminadas;
- }
- public boolean hayTareasDuplicadas(){
- boolean hayDuplicadas = false;
- boolean buscando = true;
- int pos_i = 0;
- while (pos_i < listaDeTareas.size() && buscando){
- Tarea tarea_i = listaDeTareas.get(pos_i);
- int pos_j = 0;
- while (pos_j < listaDeTareas.size() && buscando){
- Tarea tarea_j = listaDeTareas.get(pos_j);
- if(tarea_i.equals(tarea_j) && pos_j != pos_i){
- buscando = false;
- hayDuplicadas = true;
- }
- pos_j++;
- }
- pos_i++;
- }
- return hayDuplicadas;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement