From 329bf1f032ad656c015f6f35db4d55ceb514857b Mon Sep 17 00:00:00 2001
From: Matilainen Jaakko <jaakko.a.matilainen@student.jyu.fi>
Date: Thu, 20 Mar 2025 18:31:50 +0200
Subject: [PATCH] Tehtavat.Java muokattu

---
 src/fxHarakka/luokat/Tehtava.java  |  4 +-
 src/fxHarakka/luokat/Tehtavat.java | 66 ++++++++++++++++++++++++++----
 2 files changed, 62 insertions(+), 8 deletions(-)

diff --git a/src/fxHarakka/luokat/Tehtava.java b/src/fxHarakka/luokat/Tehtava.java
index 5a876ea..2ae8b79 100644
--- a/src/fxHarakka/luokat/Tehtava.java
+++ b/src/fxHarakka/luokat/Tehtava.java
@@ -1,5 +1,5 @@
 package fxHarakka.luokat;
-
+import java.time.LocalDate;
 /**
  * ---------------------Tehtava == yhden tehtän luokka-----------------------
  * | Vastuualueet:                                      |                   |
@@ -27,6 +27,8 @@ public class Tehtava {
     private int id;                          //tehtävän id numero
     private String lisatieto = "";           //tehtävän lisätiedot
 
+
+
     /**
      *TODO sitten kun Pvm ja Aika luokat lisätty ne pitää lisätä muodostajaan ja ainakin tällä hetkellä
      * lisaa Tehtaa metodiin
diff --git a/src/fxHarakka/luokat/Tehtavat.java b/src/fxHarakka/luokat/Tehtavat.java
index 13fa421..6274552 100644
--- a/src/fxHarakka/luokat/Tehtavat.java
+++ b/src/fxHarakka/luokat/Tehtavat.java
@@ -1,5 +1,6 @@
 package fxHarakka.luokat;
 
+import java.io.IOException;
 import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.Optional;
@@ -17,9 +18,11 @@ import java.util.Optional;
  * --------------------------------------------------------------------------
  */
 public class Tehtavat {
-    private int maara;
+    private int maara = 0;
+    private int maxMaara = 10;
     private int id;
-    private ArrayList<Tehtava> alkiot = new ArrayList<>();
+    private String tiedostoNimi = "";
+    private Tehtava tahtavaAlkiot[] = new Tehtava[maxMaara];
 
     //-----------------------MUODOSTAJAT-TEHTAVAT----------------------------
 
@@ -27,14 +30,12 @@ public class Tehtavat {
     //ei tarvitse erikseen muodostajia
     public Tehtavat() {
 
-
     }
 
 
     //-----------------------METODIT - TEHTAVAT----------------------------
 
     /**
-     *
      * @return palauttaa tehtävien määrän
      */
     public int getMaara() {
@@ -43,27 +44,78 @@ public class Tehtavat {
 
 
     /**
-     * lisää tehtävän tietorakenteeseen
+     * Lisää tehtävä jäsenen tietorakenteeseen
      * @param tehtava lisättävä tehtävä
      */
     public void lisaaTehtava (Tehtava tehtava) {
-        alkiot.add(tehtava);
+            tahtavaAlkiot[maara++] = tehtava;
+    }
+
+
+    /**
+     * poistaa tehtävän tietorakenteesta indeksin perusteella
+     * @param tehtava poistettava tehtävä
+     */
+    public void poistaTehtava (Tehtava tehtava) {
+
+        for (int i = 0; i < maxMaara; i++) {
+            if (tahtavaAlkiot[i] == tehtava && i < maxMaara - 1) {
+                for (int j = i; j < maxMaara-1; j++) {
+                    tahtavaAlkiot[i] = tahtavaAlkiot[i+1];
+                }
+            }
+        }
 
     }
 
 
+
     /**
      * @return Tehtävä
      * @param i Tehtävän indeksi tietorakenteessa joka halutaan
      */
     public Tehtava anna (int i) {
-       return alkiot.get(i);
+       return tahtavaAlkiot[i];
+    }
+
+
+    /**
+     * Tallentaa tehtävän rekisteriin
+     */
+    public void tallenna () {
     }
 
 
 
 
 
+    /**
+     * Testipääohjelma
+     * @param args ei käytössä
+     */
+    public static void main(String args[]) {
+        Tehtavat tehtavat = new Tehtavat();
+
+        Tehtava labratyo1 = new Tehtava();
+        Tehtava luento1 = new Tehtava();
+
+        try {
+            tehtavat.lisaaTehtava(labratyo1);
+            tehtavat.lisaaTehtava(luento1);
+            tehtavat.poistaTehtava(luento1);
+            System.out.println("============= Tehtävät testi =================");
+
+            for (int i = 0; i < tehtavat.getMaara(); i++) {
+                Tehtava tehtava = tehtavat.anna(i);
+                System.out.println("Jäsen nro: " + i);
+            }
+
+        } catch (Exception e) {
+            System.out.println("jasen olio ei palauta alkiota" + e.getMessage());
+        }
+
+    }
+
 
 
 
-- 
GitLab