class Kaningaard { private Kanin [] kaniner = new Kanin[100]; //sjekker om det er fult public boolean full() { for (int i = 0; i < kaniner.length; i++) { if (kaniner[i] == null) { return false; } } return true; } //sjekker om arrayet er tomt public boolean tom () { for (int i = 0; i < kaniner.length; i++) { if (kaniner[i] != null) { return false; } } return true; } //finner en kanin basert paa navn public Kanin finnEn(String navn) { for (int i = 0; i < kaniner.length; i++) { if (kaniner[i] != null && kaniner[i].hentNavn().equals(navn)) { return kaniner[i]; } } return null; } //setter inn en kanin public void settInn (Kanin kanin) { //sjekker at den ikke eksisterer if (finnEn(kanin.hentNavn()) != null) { System.out.println("Kaninen finnes alt i kaningaarden!"); //sjekker at det ikke er fult } else if (full()) { System.out.println("Det er ikke plass til flere kaniner!"); } else { boolean sattInn = false; int teller = 0; //setter inn kaninen //stopper naar den er satt inn eller ennen er naadd while (teller < kaniner.length && !sattInn) { if (kaniner[teller] == null) { kaniner[teller] = kanin; sattInn = true; } teller++; } } } //fjerner en kanina basert paa navn public void fjern(String navn) { boolean funnet = false; int teller = 0; //saa lenge den ikke er funnet og lengden ikke er feridg while (teller < kaniner.length && !funnet) { if (kaniner[teller] != null && kaniner[teller].hentNavn().equals(navn)) { kaniner[teller] = null; funnet = true; } teller++; } if (!funnet) { System.out.println("Fant ikke kaninen " + navn + "."); } } //Et par tester ... public static void main(String[] args) { Kaningaard kg = new Kaningaard(); kg.settInn(new Kanin("Kaare")); kg.settInn(new Kanin("Kaare")); kg.fjern("Kaare"); kg.fjern("Kaare"); } //forventet utskrift: //Kaninen finnes alt i kaningaarden! //Fant ikke kaninen Kaare. }