fork download
  1. import java.time.Year;
  2.  
  3. class Articol {
  4. private String autor;
  5. private String titlu;
  6. private String jurnal;
  7. private int anPublicare;
  8.  
  9. // Constructor implicit (folosește înlănțuirea constructorilor)
  10. public Articol() {
  11. this("Necunoscut", "Fara titlu", "General", 0);
  12. }
  13.  
  14. // Constructor cu parametri
  15. public Articol(String autor, String titlu, String jurnal, int anPublicare) {
  16. this.autor = autor;
  17. this.titlu = titlu;
  18. this.jurnal = jurnal;
  19. this.anPublicare = anPublicare;
  20. }
  21.  
  22. // Constructor de copiere
  23. public Articol(Articol altArticol) {
  24. this(altArticol.autor, altArticol.titlu, altArticol.jurnal, altArticol.anPublicare);
  25. }
  26.  
  27. // Getters
  28. public String getAutor() { return autor; }
  29. public String getTitlu() { return titlu; }
  30. public String getJurnal() { return jurnal; }
  31. public int getAnPublicare() { return anPublicare; }
  32.  
  33. @Override
  34. public String toString() {
  35. return String.format("%s - \"%s\", în %s (%d)", autor, titlu, jurnal, anPublicare);
  36. }
  37.  
  38. public int calculeazaVechime() {
  39. int anulCurent = Year.now().getValue(); // Dinamic: va returna 2026
  40. return anulCurent - anPublicare;
  41. }
  42. }
  43.  
  44. public class Main {
  45. public static void main(String[] args) {
  46. // Organizăm datele într-un tablou pentru a putea itera prin ele
  47. Articol[] colectie = {
  48. new Articol("Popescu Ana", "IA in educatie", "AI Journal", 2022),
  49. new Articol("Ionescu Mihai", "Algoritmi", "CS Review", 2019),
  50. new Articol("Georgescu Elena", "Sisteme", "IT Today", 2024)
  51. };
  52.  
  53. Articol celMaiRecent = colectie[0];
  54.  
  55. System.out.println("Lista articolelor:");
  56. for (Articol art : colectie) {
  57. System.out.println("- " + art);
  58.  
  59. // Determinăm cel mai recent articol în timpul parcurgerii
  60. if (art.getAnPublicare() > celMaiRecent.getAnPublicare()) {
  61. celMaiRecent = art;
  62. }
  63. }
  64.  
  65. System.out.println("\n--- Analiza ---");
  66. System.out.println("Articolul cel mai recent: " + celMaiRecent.getTitlu());
  67. System.out.println("Vechime: " + celMaiRecent.calculeazaVechime() + " an(i).");
  68. }
  69. }
Success #stdin #stdout 0.23s 59080KB
stdin
Standard input is empty
stdout
Lista articolelor:
- Popescu Ana - "IA in educatie", în AI Journal (2022)
- Ionescu Mihai - "Algoritmi", în CS Review (2019)
- Georgescu Elena - "Sisteme", în IT Today (2024)

--- Analiza ---
Articolul cel mai recent: Sisteme
Vechime: 2 an(i).