# In ArrayList suchen



## crysien (12. Dez 2017)

Schonen Guten Abend liebe Community,
kann mir einer sagen , wie Ich in ArrayList nach einem Wort suchen kann ? 
Dabei soll mir nich true angegeben werden, wenn das gesuche Wort gefunden wurde , sondern der zähler soll um einen hochzählen.
Mein Lösungsansatz:

```
private static void wortsuche (ArrayList<String> liste2) {
        int ig = 0;
        int zaehler = 0;
      for (ig = 0 ;ig < liste2.size(); ig ++) {
         if (liste2[ig].equals("test")) {
                zaehler++;
                IO.println(zaehler);
         }
        }
```

Das funktioniert nicht, da Ich ArrayList statt Array verwende.
Wenn Ich jetzt ArrayList in Array umwandle , kommt der Fehler : 
*ArrayIndexOutOfBounds*

Kann mir einer weiterhelfen ?


----------



## Tarrew (12. Dez 2017)

Anstatt liste2[ig] wie beim Array funktioniert das bei einer Liste mit "liste2.get(ig)".


----------



## crysien (12. Dez 2017)

Danke für die Antwort.
Nun kommt als Fehlermeldung: NullPointerException


----------



## Tarrew (12. Dez 2017)

Dann ist die Liste wohl null, die du als Parameter übergibst.
Oder deine Liste enthält einen Eintrag, der null ist. Dann fliegts bei der equals-Methode.

Dazu sieht man aber zu wenig Code.


----------



## Tarrew (12. Dez 2017)

Für deine Wortsuche-Methode gibt es übrigens auch eine Standardfunktion: 
Collections.frequency


----------



## crysien (13. Dez 2017)

Mit 

```
for(int i=0; i < liste2.size(); i++) {
            IO.println(liste2.get(i));
        }
```
Sehe Ich zwar, das alles korrekt in der ArrayList Liste2 eingespeichert ist , aber wenn Ich jetzt mit der frequency Methode die Anzahl der Worttreffer ausgeben will , kommt immer 0.


----------



## Javinner (13. Dez 2017)

@crysien

```
List<String> list = new LinkedList<>();
list.add("Marie");
list.add("Linda");
list.add("Sinje");
list.add("Antje");
list.add("Lili");
list.add("Tanja");
list.add("Julia");
list.add("Sinje");

int zaehler = 0;
for (String s : list) {
      if (s.contains("Sinje")) {
            zaehler++;
      }
}
System.out.println("Name Sinje kam in der Liste " + zaehler + " vor");
/** Konsolenausgabe */
Name Sinje kam in der Liste 2 vor
```
Lies dich in die ArrayList ein. Wenn etwas, was du in der Liste abspeicherst, das Interface Comparable implementiert, dann stehen dir weitere und bessere Optionen zur Wahl.


----------

