# Nummerierung bei Sammlungen mit ausgeben



## dathvader0815 (7. Dez 2010)

Guten Abend!

Ich habe folgende Klasse "Notizbuch" mit der sich Notizen speichern und ausgeben lassen.
Jede notiz hat eine Nummerierung die bei 0 anfängt und ich möchte, dass neben der notiz auch die notiznummer ausgegeben wird.
Ist das überhaupt möglich?


```
public class Notizbuch
{
    // Speicher für eine beliebige Anzahl an Notizen.
    private ArrayList<String> notizen;

    /**
     * Führe die Initialisierungen durch, die für ein Notizbuch
     * notwendig sind.
     */
    public Notizbuch()
    {
        notizen = new ArrayList<String>();
    }

    /**
     * Speichere eine neue Notiz in diesem Notizbuch.
     * @param notiz die zu speichernde Notiz.
     */
    public void speichereNotiz(String notiz)
    {
        notizen.add(notiz);
    }

    /**
     * @return die Anzahl der Notizen in diesem Notizbuch.
     */
    public int anzahlNotizen()
    {
        return notizen.size();
    }

    /**
     * Zeige eine Notiz.
     * @param notiznummer die Nummer der Notiz, die gezeigt werden soll.
     */
    public void zeigeNotiz(int notiznummer)
    {
        if(notiznummer < 0) {
            // Keine gültige Nummer, nichts zu tun.
        }
        else if(notiznummer < anzahlNotizen()) {
            // Die Nummer ist gültig, wir können die Notiz ausgeben.
            System.out.println(notizen.get(notiznummer));
        }
        else {
            // Keine gültige Nummer, nichts zu tun.
        }
    }
}
```


----------



## eRaaaa (7. Dez 2010)

In deinem Code:

```
public void zeigeNotiz(int notiznummer) {
		if (notiznummer < 0) {
			// Keine gültige Nummer, nichts zu tun.
		} else if (notiznummer < anzahlNotizen()) {
			// Die Nummer ist gültig, wir können die Notiz ausgeben.
			System.out.println(notizen.get(notiznummer));
		} else {
			// Keine gültige Nummer, nichts zu tun.
		}
	}
```

in dem System.out, gib doch dort einfach die notiznummer mit aus? :autsch:

```
System.out.println(notiznummer + ") " + notizen.get(notiznummer));
```

Wieso fragst du nicht eig. nur  >0 &&  < anzahlNotizen ab, dann kannst du dir die leeren if-Blöcke sparen ;>


----------



## Haave (7. Dez 2010)

Klar geht das:


```
public void zeigeNotiz(int notiznummer)
    {
// […]
        else if(notiznummer < anzahlNotizen()) {
            // Die Nummer ist gültig, wir können die Notiz ausgeben.
            System.out.println(notiznummer + ": " + notizen.get(notiznummer));
// […]
    }
```


EDIT: Zu langsam ^^


----------



## SlaterB (7. Dez 2010)

System.out.println(notiznummer+" -- "+notizen.get(notiznummer));


----------



## dathvader0815 (7. Dez 2010)

ist wohl doch einfacher als ich gedacht hab.
Danke für die Hilfe!


----------



## dathvader0815 (10. Dez 2010)

Ich hab nochmal eine andere Frage ich möchte die notiznummer auch bei der methode "alleNotizenAusgeben" mit ausgeben, leider funktioniert das nicht ganz so wie ich will kann mir jemand woran das leigt? Anscheinend wird die variable int notiznummer nicht gefunden was kann ich da machen? DAnke!


```
public void alleNotizenAusgeben()
    {
        int notiznummer = 0;
        int index = 0;
        while(index < notizen.size() )
        {
            System.out.println(notiznummer + ": " + notizen.get(index));
            index = index + 1;
        }
    }
```


----------



## mariusbopp (10. Dez 2010)

manchmal ist eben doch der einfache weg der richtige :toll:

edit: für deine letze frage musst du ja irgendwie die variable übergeben das du sie wieder benutzen kannst!!


----------



## Gast2 (10. Dez 2010)

dathvader0815 hat gesagt.:


> Ich hab nochmal eine andere Frage ich möchte die notiznummer auch bei der methode "alleNotizenAusgeben" mit ausgeben, leider funktioniert das nicht ganz so wie ich will kann mir jemand woran das leigt? Anscheinend wird die variable int notiznummer nicht gefunden was kann ich da machen? DAnke!
> 
> 
> ```
> ...



Du machst ja auch mit der notiznummer nichts weiter... die wird mit 0 initialisiert und dann nicht mehr geändert. Was soll da bei rum kommen?


```
public void alleNotizenAusgeben()
    {
        for(int i = 0; i < notizen.size(); i++){
            System.out.println(i+ ": " + notizen.get(i));
        }
    }
```

@mariusbopp
so langsam frag ich mich ob du Postings sammelst


----------



## dathvader0815 (10. Dez 2010)

Und was muss ich schreiben damit die Methode weiss was die notiznummer ist?


----------



## dathvader0815 (10. Dez 2010)

Also ich meine, wie kann ich die Variable an die Methode übergeben? Geht das überhaupt?


----------



## SlaterB (10. Dez 2010)

welche Variable?
notizNummer in zeigeNotiz()? die war dort ein Parameter, 
in alleNotizenAusgeben() kannst du genauso einen Parameter ausgeben, wobei es eher fraglich ist EINE Nummer für ALLE Notizen zu übergeben,
pro Notiz existiert die Zahl direkt nirgendwo mehr, nur noch als Position in der Liste

du könntest statt eines Strings ein höheres Notiz-Objekt in der Liste speichern, darin die Nummer + den String


----------



## Andi_CH (10. Dez 2010)

Haave hat gesagt.:


> Klar geht das:
> 
> 
> ```
> ...



Ähm steht doch shon da? So übergibt man einen Wert an eine Prozedur ...
Aber vielleicht versteh ich dich miss ;-)


----------



## mariusbopp (10. Dez 2010)

das mit der variable habe ich geschrieben... ich wollte nicht gleich parameter schreiben da man ja auch mal kurz selber überlegen kann dann würde man ja auf parameter kommen :applaus:

was sinn macht ist wie du es geschrieben hast die nr. in ne liste und dann die gesamte liste übergeben so hast du alle nummern!


----------



## dathvader0815 (10. Dez 2010)

irgendwie wills nicht funktionieren... was mach ich falsch?



```
public void alleNotizenAusgeben(int notiznummer)
    {
        int index = 0;
        while(index < notizen.size() )
        {
            if(notiznummer < 0)
            {
            }
            else if(notiznummer < anzahlNotizen())
                 {
                 System.out.println(notiznummer + ": " + notizen.get(index));
                 index = index + 1;
                 }
            else
            {
            }    
        }
    }
```


----------



## SlaterB (10. Dez 2010)

was funktioniert denn nicht?
du produzierst irren Code, soweit klar, aber die ganze Idee, in dieser Methode eine einzelne Variable zu haben ist schon verrückt,
was ist dein Ziel?

das einzige was direkt möglich erscheint, hat fassy um 15.55 gepostet, alles andere musst du erst erklären


----------



## dathvader0815 (10. Dez 2010)

Ich hab nochmal eine andere frage und möchte nicht extra einen neuen thread dafür aufmachen.
ich möchte eine methode schreiben mit der man nach einer notiz suchen kann.
Ich bekomme immer die Fehlermeldung "missing return statement"


```
public String sucheNotiz(String suchwort)
     {
         int index = 0;
         while(index < notizen.size())
         {
             String notiz = notizen.get(index);
             if (notiz.contains(suchwort))
             {
                 return notiz;
                 
             }
                
            }
        }
```


----------



## dathvader0815 (10. Dez 2010)

habs jetzt selbst hinbekommen.


```
public String sucheNotiz(String suchwort)
     {
         int index = 0;
         while(index < notizen.size())
         {
             String notiz = notizen.get(index);
             if (notiz.contains(suchwort))
             {
                 return notiz;
             }
             index++;
             }
                 return "Fehler: Keine Notiz gefunden";
         }
```


----------



## dathvader0815 (10. Dez 2010)

Ich hab da noch eine aufgabe mit der ich ehrlich gesagt nicht so viel anfangen kann:

"Überladen Sie die Methode notizEntfernen() aus d). In diesem Fall soll der Methode eine
Zeichenkette übergeben werden. Es soll die erste gefundene Notiz gelöscht werden, die
diese Zeichenkette enthält. Die gelöschte Notiz soll ausgeben werden. Falls keine passende
Notiz gefunden wird soll eine entsprechende Fehlermeldung ausgegeben werden."

Es geht um diese Methode:


```
public void notizEntfernen(int notiznummer)
         {
             if(notiznummer < 0)
             {
             } 
             else if(notiznummer < anzahlNotizen())
             {
                 notizen.remove(notiznummer);
             }
             else
             {
             }
      }
```

Kann mir da bitte mal jemand weiterhelfen? Danke!


----------



## SlaterB (11. Dez 2010)

dieselbe Methode mit String als Parameter, dann suchen, z.B. die vorhandene Methode verwenden und die gefundene Notiz entfernen


----------



## dathvader0815 (12. Dez 2010)

Habs jetzt mal so probiert... Wo liegt der bzw. die Fehler?


```
public void notizEntfernen(String suchwort)
     {
         int index = 0;
         while(index < notizen.size())
         {
             String notiz = notizen.get(index);
             if (notiz.contains(suchwort))
             {
                 notizen.remove(suchwort);
             }
             else
             {
                 System.out.println("Fehler: Keine Notiz gefunden");
                
         }
      }       
   }
```


----------



## eRaaaa (12. Dez 2010)

```
notizen.remove(suchwort);
```

sollte das nicht viel eher [c]notizen.remove(*notiz*);[/c] heißen?


----------



## dathvader0815 (12. Dez 2010)

eRaaaa hat gesagt.:


> ```
> notizen.remove(suchwort);
> ```
> 
> sollte das nicht viel eher [c]notizen.remove(*notiz*);[/c] heißen?




Ja, da hast du Recht nur leider funktioniert die Methode immer noch nicht...


----------



## eRaaaa (12. Dez 2010)

dathvader0815 hat gesagt.:


> Ja, da hast du Recht nur leider funktioniert die Methode immer noch nicht...



Mensch, solche genialen Fehlerbeschreibungen 
Ich sehe nirgends, dass du 
	
	
	
	





```
index
```
 erhöhst ???:L


----------



## dathvader0815 (12. Dez 2010)

Ok ich hab index++; hinzugefügt, was ich komisch finde ist, wieso kommt jetzt immer die Fehlermeldung "if else without if"? Irgendie kann ich jetzt kein else mehr bei der if-Anweisung hinschreiben...


----------



## eRaaaa (12. Dez 2010)

dathvader0815 hat gesagt.:


> Ok ich hab index++; hinzugefügt, was ich komisch finde ist, wieso kommt jetzt immer die Fehlermeldung "if else without if"? Irgendie kann ich jetzt kein else mehr bei der if-Anweisung hinschreiben...



Sollen wir jetzt raten wo du 
	
	
	
	





```
index++
```
 hingeschrieben hast und was du sonst noch alles verändert hast? Wieso gibst du nicht jedes mal eine ausführliche Beschreibung + Code, das würde die ganze Sache beschleunigen! Vllt. wäre eine for-Schleife auch einfacher für dich?
Generell tut deine Methode ja auch nicht das, was in der Aufgabe gefordert ist. DU löschst so ggf, nicht nur die Erste, sondern alle wo das Suchwort enthalten ist, und ausgeben tust du sie auch nicht. Und der else-Teil so wie er war(den du jetzt vermutlich aber umgebaut hast?? ) soll bestimmt auch nicht bei jeder Notiz auftauchen oder? Aber das nur am Rande :>


----------



## dathvader0815 (12. Dez 2010)

eRaaaa hat gesagt.:


> Sollen wir jetzt raten wo du
> 
> 
> 
> ...




Sorry, hab vergessen den code mit anzufügen!

```
public void notizEntfernen(String suchwort)
     {
         int index = 0;
         while(index < notizen.size())
         {
             String notiz = notizen.get(index);
             if (notiz.contains(suchwort))
             {
                 notizen.remove(notiz);
             }
             index++;
         
             {
                 System.out.println("Fehler: Keine Notiz gefunden");
             }
      }       
   }
```


----------



## eRaaaa (12. Dez 2010)

Naja, entweder das 
	
	
	
	





```
index++
```
 mit rein in den if-Block, oder aber danach(was wohl mehr Sinn machen würde in dem Fall), aber nicht dazwischen :autsch:
Aber wie schon gesagt, vermutlich soll`s gar keinen else-Teil geben?!

```
public void notizEntfernen(String suchwort) {
		int index = 0;
		while (index < notizen.size()) {
			String notiz = notizen.get(index);
			if (notiz.contains(suchwort)) {
				notizen.remove(notiz);
				System.out.println(notiz + " wurde gelöscht");
				return;
			}
			index++;
		}
		System.out.println("Fehler: Keine Notiz gefunden");
	}
```

:rtfm:


----------



## dathvader0815 (12. Dez 2010)

Danke eRaaaa.

Ich hab noch eine andere (letzte) Aufgabe, bei der ich nicht so wirklich weiss wie ich sie angehen soll:

"g. Versuchen Sie eine Realisierung der Methode aus Aufgabe f) unter Verwendung einer
while-Schleife welche die ArrayList per Index durchläuft und Notizen unter Verwendung
ihres Index löscht."

Hier ist noch Aufgabe f) und der dazugehörige code:

"f. Ergänzen Sie eine Methode alleNotizenEntfernen(), der eine Zeichenkette übergeben
wird. Es sollen alle Notizen entfernt werden, in denen diese Zeichenkette vorkommt.
Verwenden Sie hierzu einen Iterator. Die gelöschten Notizen sollen ausgegeben werden."



```
public void alleNotizenEntfernen(String suchwort)
    {
     Iterator<String> it = notizen.iterator();
     while (it.hasNext())
     { 
        String notiz = it.next();
        if (notiz.contains(suchwort))
        {
            it.remove();
            System.out.println(notiz + " wurde gelöscht");
        }
    }     
}
```


----------



## eRaaaa (12. Dez 2010)

Ist doch eig. fast der selbe Code wie ich ihn gepostet habe. Nur der remove Befehl muss angepasst werden und eine Zeile muss komplett raus 
Wenn du den Code den ich gepostet habe verstehst, sollte die Aufgabe f) eig. keine Probleme darstellen?!


----------



## dathvader0815 (12. Dez 2010)

eRaaaa hat gesagt.:


> Ist doch eig. fast der selbe Code wie ich ihn gepostet habe. Nur der remove Befehl muss angepasst werden und eine Zeile muss komplett raus
> Wenn du den Code den ich gepostet habe verstehst, sollte die Aufgabe f) eig. keine Probleme darstellen?!




Kannst du mir vielleicht nen Tipp geben, was genau an dem remove befehle geändert werden muss ich komm leider nicht drauf.


----------



## eRaaaa (12. Dez 2010)

ArrayList (Java Platform SE 6)

"die ArrayList per *Index* durchläuft und Notizen unter Verwendung
ihres *Index* löscht."


----------



## dathvader0815 (12. Dez 2010)

habs jetzt mal so gemacht leider wird immer nur eine notiz gelöscht woran liegt das?


```
public void alleNotizenEntfernenAufgabeg(String suchwort) 
      {
        int index = 0;
        while (index < notizen.size()) 
        {
            String notiz = notizen.get(index);
            if (notiz.contains(suchwort)) 
            {
                notizen.remove(index);
                System.out.println(notiz + " wurde gelöscht");
                return;
            }
            index++;
        }
        
    }
```


----------



## eRaaaa (12. Dez 2010)

Ich zitiere mich mal selbst:



eRaaaa hat gesagt.:


> Nur der remove Befehl muss angepasst werden *und eine Zeile muss komplett raus *
> Wenn du den Code den ich gepostet habe verstehst, sollte die Aufgabe f) eig. keine Probleme darstellen?!



Tipp: Entferne die Zeile


----------



## dathvader0815 (12. Dez 2010)

eRaaaa hat gesagt.:


> Ich zitiere mich mal selbst:
> 
> 
> 
> Tipp: Entferne die Zeile





B16? was ist das? meinst du zeile 16?


----------



## eRaaaa (12. Dez 2010)

Mensch versuche den Code doch endlich mal zu verstehen, welche Zeile könnte der Auslöser dafür sein, dass in dem ersten Code bei einem Fund die Methode beendet wird?
kann doch logischerweise nur in dem Teil passieren oder?

```
if (notiz.contains(suchwort)) {
                notizen.remove(notiz);
                System.out.println(notiz + " wurde gelöscht");
                return;
            }
```

so viele Möglichkeiten gibts doch da gar nicht! Und nein, ich meinte nicht Zeile 16 :autsch:


----------



## dathvader0815 (12. Dez 2010)

Das return oder?
Trotzdem, wenn ich diese zeile entferne ändert das nichts die Methode funktioniert trotzdem nicht.


----------



## eRaaaa (12. Dez 2010)

Beispiel.

Liste : foo , bar, foobar, hallo, welt;

Size = 5

Schleife =  läuft von Index 0 -> Index 4

Suchwort = bar

du löschst Index 1, nun rutschen alle anderen Elemente nach!!!! --> foo, foobar,hallo,welt

nächster Index wäre 2 du überspringst also foobar!

Was musst du nun also zusätzlich tun, damit das nicht mehr passiert?

Achja : "funktioniert trotzdem nicht." <-- :toll:


----------



## dathvader0815 (12. Dez 2010)

Welche Zeile ist es denn?


----------



## dathvader0815 (13. Dez 2010)

Also ich verstehe was in dem code falsch läuft, ich muss eine Anweisung schreiben, die den index nach jeder gelöschten notiz um eins zurücksetzt oder nicht?


----------



## SlaterB (13. Dez 2010)

besser wäre:
1.
die Liste mit einem Iterator zu durchlaufen, da geht das remove, da musst du keine Indexe rechnen, das macht genau der
2.
einfacher nachzuvollziehen und wenig problemanfällig:
die zu entfernenden Elemente in einer separaten Liste sammeln, in der Hauptliste noch nix löschen,
erst am Ende die zweite Liste durchlaufen und die Elemente aus der Hauptliste löschen


----------



## dathvader0815 (13. Dez 2010)

In der Aufgabe steht, dass wir die methode mit einer while Schleife realisieren sollen.
Hier nochmal die Aufgabe:

g. Versuchen Sie eine Realisierung der Methode aus Aufgabe f) unter Verwendung einer
while-Schleife welche die ArrayList per Index durchläuft und Notizen unter Verwendung
ihres Index löscht.


```
public void alleNotizenEntfernenAufgabeg(String suchwort) 
      {
        int index = 0; 
        while (index < notizen.size()) 
        {
            String notiz = notizen.get(index);
            if (notiz.contains(suchwort)) 
            {
                notizen.remove(notiz);
                System.out.println(notiz + " wurde gelöscht");
               
            }
            index++;
        }
        
   
    }
  [JAVA/]

Hier ist der (nicht funktionierende) code.
erraaa hat ja geschreiben man muss nur eine Zeile entfernen und die Methode würde funktionieren. Ich komm leider nicht drauf welche Zeile das ist.
```


----------



## SlaterB (13. Dez 2010)

> erraaa hat ja geschreiben man muss nur eine Zeile entfernen

5 sec die Beiträge dazu überfolgen und erkannt dass es 'eRaaaa' dort um das 'return;' ging, welches du nun ja auch nicht mehr drinhast,
bisschen mitdenken bitte

mit den Indexen hatte das nichts zu tun, dazu wurde die Lösung aber auch schon diskutiert, 
dann ja, meinetwegen genau
"ich muss eine Anweisung schreiben, die den index nach jeder gelöschten notiz um eins zurücksetzt"

Anmelden um verkorkste Java-Code-Postings zu korrgieren ist weiterhin auch nicht drin?
bei solch einem Einsatz hilft man ja gerne..


----------



## XHelp (13. Dez 2010)

Naja, was da schief geht hat er ja schon geschrieben:

```
a b c d e f g h i j k l m
^ hier steht der index

1. Schritt:
a soll nicht gelöscht werden. der index wird nach rechts verschoben:
a b c d e f g h i j k l m
  ^

2. Schritt:
b wird gelöscht:
a c d e f g h i j k l m
  ^
und der index wieder nach rechts verschoben:
a c d e f g h i j k l m
    ^

3. Schritt:
...
```

Was fällt dir dabei auf? Tipp: es hat was mit 
	
	
	
	





```
c
```
 zu tun


----------



## dathvader0815 (13. Dez 2010)

Mann muss quasi eine Anweisung hinzufügen, dass der index nach einer gelöschten notiz nicht eins weiter nach rechts verschoben wird. Aber wie setzt man das im java code um?


----------



## XHelp (13. Dez 2010)

Hat doch SlaterB gerade geschrieben. Du musst schon das durchlesen, was man die hier schreibt...


----------



## SlaterB (13. Dez 2010)

im if index--;

bzw. im if nix tun und das index++ nur ins else


----------



## dathvader0815 (13. Dez 2010)

SlaterB hat gesagt.:


> im if index--;
> 
> bzw. im if nix tun und das index++ nur ins else





Also jetzt verwirrst du mich aber...
Der code ist doch im moment so, dass im if nix getan wird und das index++ steht auch bei else!?


----------



## dathvader0815 (13. Dez 2010)

ich mein, so wie du es grad beschreiben hast müsste der code ja so aussehen:

```
public void alleNotizenEntfernenAufgabeg(String suchwort) 
      {
        int index = 0; 
        while (index < notizen.size()) 
        {
            String notiz = notizen.get(index);
            if (notiz.contains(suchwort)) 
            {
                index--;
                notizen.remove(notiz);
                System.out.println(notiz + " wurde gelöscht");
               
            }
           
        }
        
   
    }
```


----------



## SlaterB (13. Dez 2010)

nein, so habe ich es nicht geschrieben,

ein Satz war
"im if index--;"
das hast du zwar umgesetzt, aber das index++; fehlt jetzt ohne rechten Grund

dann habe ich noch eine zweite andere Möglichkeit beschrieben, dasselbe zu erreichen
"bzw. im if nix tun und das index++ nur ins else"
da wird index++; geändert, wandert in ein else, aber ganz verschwinden tut es auch nicht


war zwar nicht besonders ausführlich von mir beschrieben, aber damit musst du leben,
z.B. hättest du deine Änderung doch sehr gut mit und ohne index++; an alter Stelle testen können, warum auch immer das nun in Frage war,
dauert vielleicht 5 Min. länger vor dem nächsten Frage-Posting, dafür immerhin was geleistet, vielleicht Erkenntnisse gewonnen

außerdem hattest du doch schon vor langer Zeit selber erkannt
"ich muss eine Anweisung schreiben, die den index nach jeder gelöschten notiz um eins zurücksetzt"
einfach mal Luft holen und das in Ruhe umsetzen, so viele Varianten gibts doch gar nicht


----------



## dathvader0815 (13. Dez 2010)

Ok, danke habs jetzt hinbekommen.

Ich hab allerdings noch ne letzte Frage^^ Folgenede Aufgabe :
d. "Ergänzen Sie eine Methode notizEntfernen(). Dieser Methode soll der Index der zu entfernenden
Notiz übergeben werden. Beobachten Sie, was passiert, wenn ein falscher Index
verwendet wird. Sichern Sie die Methode gegen einen übergebenen falschen Index
ab."


```
public void notizEntfernen(String suchwort) 
       {
        int index = 0;
        while (index < notizen.size()) 
        {
            String notiz = notizen.get(index);
            if (notiz.contains(suchwort)) 
            {
                notizen.remove(notiz);
                System.out.println(notiz + " wurde gelöscht");
                return;
            }
            index++;
        }
        System.out.println("Fehler: Keine Notiz gefunden");
    }
```


Ich soll die Methode gegen einen falschen übergebenen index sichern. Aber wie geht das? ich hab im code jetzt mal sozusagen provisorisch eine Fehlermeldung eingefügt aber ich denke nicht, dass das in der aufgabe gemeint war.
Gibt es eine Möglichkeit die Methode gegen einen übergebenen falschen index abzusichern?


----------



## XHelp (13. Dez 2010)

Deine Lösung ist immer noch falsch.
Ein gültiger Index ist im Berech [0;list.size()[ Logischer weise ist alles andere ungültig.


----------



## dathvader0815 (13. Dez 2010)

XHelp hat gesagt.:


> Deine Lösung ist immer noch falsch.
> Ein gültiger Index ist im Berech [0;list.size()[ Logischer weise ist alles andere ungültig.




Der code den ich gepostet hab bezieht sich auf die aktuelle aufgabe.


----------



## XHelp (13. Dez 2010)

Dann ist er nicht "etwas" falsch, sondern gänzlich falsch. Alleine schon weil du laut der Aufgabenstellung einen Index übergeben bekommst und kein Wort.


----------



## SlaterB (13. Dez 2010)

prüfe vorher z.B.
if (index < 0)


----------



## dathvader0815 (13. Dez 2010)

SlaterB hat gesagt.:


> prüfe vorher z.B.
> if (index < 0)



Der index müsste doch grösser oder gleich 0 sein oder nicht?

 if (notiz.contains(suchwort)) && (index >= 0)

Müsste es nicht so funktionieren?


----------



## SlaterB (13. Dez 2010)

es gibt kein suchwort, bei dieser Aufgabe hast du nur den Index als Parameter,

und ob du kleiner oder größer testest hängt davon ab was ansonsten passieren soll, da kann man verschiedene Varianten bauen

```
if (kleiner) {
   // Fehlermeldung
}
// suche
```
oder

```
if (größer) {
   // suche
}
// Fehlermeldung
```
usw.
mach wie du denkst, teste nur ausführlich mit allen dir denkbaren interessanten Kombinationen, 
und glaube nicht dass < 0 der einzige Test war, vorher hattest du ja auch einen anderen..

aber da das alles so klein-klein ist und das eigentlich deine Hausaufgabe ist, 
schreibe ich schon mal abschließend, dass ich nun nicht mehr weiter antworten werde,
ewig kann das ja nicht weitergehen


----------

