Advertisement
Guest User

Untitled

a guest
Jan 19th, 2017
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.95 KB | None | 0 0
  1. import java.util.ArrayList;
  2. import java.time.*;
  3. /**
  4. * Write a description of class ListaTareas here.
  5. *
  6. * @author (your name)
  7. * @version (a version number or a date)
  8. */
  9. public class ListaTareas {
  10.  
  11. private ArrayList<Tarea> listaDeTareas;
  12. private int id_count;
  13.  
  14. public ListaTareas(){
  15. listaDeTareas = new ArrayList<Tarea>();
  16. id_count =10;
  17. }
  18.  
  19. private int getPositionById(int id) {
  20. int posicion = -1;
  21. for (Tarea tarea : listaDeTareas) {
  22. if (tarea.getId() == id){
  23. posicion = listaDeTareas.indexOf(tarea);
  24. }
  25. }
  26. return posicion;
  27. }
  28.  
  29. private boolean idExists(int id){
  30. boolean id_found = false;
  31. int posicion = 0;
  32. while (posicion < listaDeTareas.size() && !id_found) {
  33. if (listaDeTareas.get(posicion).getId() == id) {
  34. id_found = true;
  35. }
  36. posicion++;
  37. }
  38. return id_found;
  39. }
  40.  
  41. public void addTarea(String descripcionTarea){
  42. if (id_count <= 99) {
  43. Tarea tarea = new Tarea(descripcionTarea, id_count);
  44. listaDeTareas.add(tarea);
  45. id_count++;
  46. }
  47. }
  48.  
  49. public void mostrarTareas(){
  50. for (Tarea tarea : listaDeTareas) {
  51. System.out.println(tarea);
  52. }
  53. }
  54.  
  55. public void marcarComoCompletada(int id){
  56. if (idExists(id)){
  57. listaDeTareas.get(getPositionById(id)).marcarComoCompletada();
  58. }
  59. }
  60.  
  61. public void mostrarCoincidentes(String textoABuscar) {
  62. int posicion = 0;
  63. while (posicion < listaDeTareas.size()) {
  64. Tarea tareaActual = listaDeTareas.get(posicion);
  65. if (tareaActual.getDescripcion().contains(textoABuscar)) {
  66. System.out.println(tareaActual.toString());
  67. }
  68. posicion++;
  69. }
  70. }
  71.  
  72. public void eliminarTarea(int id) {
  73. if (idExists(id)){
  74. listaDeTareas.remove(getPositionById(id));
  75. }
  76. }
  77.  
  78. public void establecerNuevaPrioridad (int id, int prioridad) {
  79. if (idExists(id)) {
  80. if(prioridad >= 0 && prioridad <= 5){
  81. listaDeTareas.get(getPositionById(id)).cambiarPrioridad(prioridad);
  82. }
  83. }
  84. }
  85.  
  86. public void setFechaVencimiento(int id, int anio, int mes, int dia) {
  87. if (idExists(id)) {
  88. listaDeTareas.get(getPositionById(id)).establecerFechaVencimiento(anio, mes, dia);
  89. }
  90. }
  91.  
  92. public void mostrarHoy() {
  93. LocalDate diaHoy = LocalDate.now();
  94. for (Tarea tarea: listaDeTareas) {
  95. if (tarea.verFechaVencimiento() != null) {
  96. if (tarea.verFechaVencimiento().isEqual(diaHoy)){
  97. System.out.println(tarea.toString());
  98. }
  99. }
  100. }
  101. }
  102.  
  103. public void mostrarVencidas() {
  104. LocalDate diaHoy = LocalDate.now();
  105. for(Tarea tarea : listaDeTareas) {
  106. if(tarea.verFechaVencimiento() != null) {
  107. if (tarea.verFechaVencimiento().isBefore(diaHoy)) {
  108. System.out.println(tarea.toString());
  109. }
  110. }
  111. }
  112. }
  113.  
  114. public void mostrarMayorPrioridad() {
  115. int mayorPrioridad = 0;
  116. for (Tarea tarea : listaDeTareas) {
  117. if (tarea.getPrioridad() > mayorPrioridad) {
  118. mayorPrioridad = tarea.getPrioridad();
  119. }
  120. }
  121. int number = 1;
  122. for (Tarea tarea : listaDeTareas) {
  123. if (tarea.getPrioridad() == mayorPrioridad) {
  124. System.out.println(number +" "+ tarea.toString());
  125. number++;
  126. }
  127. }
  128. }
  129.  
  130. public void mostrarPrioridad2() {
  131. if (listaDeTareas.size() > 0) {
  132. Tarea lastTarea = listaDeTareas.get(0);
  133. for (Tarea tarea : listaDeTareas) {
  134. if (tarea.getPrioridad() >= lastTarea.getPrioridad()){
  135. lastTarea = tarea;
  136. }
  137. }
  138. System.out.println(lastTarea);
  139. }
  140. }
  141.  
  142. public int tareaMasViejaPendiente() {
  143. int pos_buscada = -1;
  144. boolean buscando = true;
  145. int pos = 0;
  146. while(pos < listaDeTareas.size() && buscando){
  147. Tarea tarea = listaDeTareas.get(pos);
  148. if(!tarea.estaTerminada()){
  149. pos_buscada = pos;
  150. buscando = false;
  151. }
  152. pos++;
  153. }
  154. return pos_buscada;
  155. }
  156.  
  157.  
  158. public int numeroTareasSinTerminar() {
  159. int no_terminadas = 0;
  160. for(Tarea tarea : listaDeTareas) {
  161. if (!tarea.estaTerminada()){
  162. no_terminadas++;
  163. }
  164. }
  165. return no_terminadas;
  166. }
  167.  
  168. public boolean hayTareasDuplicadas(){
  169. boolean hayDuplicadas = false;
  170. boolean buscando = true;
  171. int pos_i = 0;
  172. while (pos_i < listaDeTareas.size() && buscando){
  173. Tarea tarea_i = listaDeTareas.get(pos_i);
  174. int pos_j = 0;
  175. while (pos_j < listaDeTareas.size() && buscando){
  176. Tarea tarea_j = listaDeTareas.get(pos_j);
  177. if(tarea_i.equals(tarea_j) && pos_j != pos_i){
  178. buscando = false;
  179. hayDuplicadas = true;
  180. }
  181. pos_j++;
  182. }
  183. pos_i++;
  184. }
  185. return hayDuplicadas;
  186. }
  187. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement