Hallo.
Mein Script soll die Anzahl von bestimmten Worten zaehlen.
Alles funktioniert. Bis auf den Iterator.
Jeder Schluessel in meiner Hashmenge wird verglichen mit jedem Array Eintrag.
Jedesmal bei uebereinstimmung wird + eins hinzugezaehlt.
Doch der Java Compiler meckert nur ueber meinen Iterator. Als ob er ihn nicht anerkennen wuerde.
Darf man einen Iterator bei Hashmap nicht einsetzen? Wie mache ich es sonst?
for(String key : myHashMap.keySet())
??? Aber auch wenn ich das umschrieb fuer die Aufgabe, hatte ich nur Fehlermeldungen.
Mein Script soll die Anzahl von bestimmten Worten zaehlen.
Alles funktioniert. Bis auf den Iterator.
Jeder Schluessel in meiner Hashmenge wird verglichen mit jedem Array Eintrag.
Jedesmal bei uebereinstimmung wird + eins hinzugezaehlt.
Doch der Java Compiler meckert nur ueber meinen Iterator. Als ob er ihn nicht anerkennen wuerde.
Darf man einen Iterator bei Hashmap nicht einsetzen? Wie mache ich es sonst?
for(String key : myHashMap.keySet())
??? Aber auch wenn ich das umschrieb fuer die Aufgabe, hatte ich nur Fehlermeldungen.
Java:
import java.util.HashMap;
import java.util.Iterator;
public class WordCount {
private static String[] readAndConvertInputFile() {
// Textdatei einlesen und in String speichern
String str = StdIn.readAll();
// String convertieren
String conv = str.replaceAll("\'s", "").replaceAll("[;,.:*/\\-_()\"\'\n]", " ").replaceAll(" {2,}", " ").toLowerCase();
return conv.split(" ");
}
public static void main(String[] args)
{
HashMap<String,Double> myHashMap = new HashMap<String,Double>();
Double eins = 1.00;
// Array erstellen:
String[] a = readAndConvertInputFile();
for (int i=0; i<a.length; i++) {
// Exemplarisches Einfügen:
Double myDouble = myHashMap.get(a[i]);
if(myDouble != null)
{
System.out.print("");
}
else
{
myHashMap.put(a[i], eins);
}
}
///////// HIer mein Iterator
///////// HIer mein Iterator
///////// HIer mein Iterator
///////// Jeder Schluessel in meiner Hashmenge wird verglichen mit jedem Array.
///////// Jedesmal bei uebereinstimmung wird + eins hinzugezaehlt.
/////////
Iterator<String> iterator = myHashMap.iterator(); // die sammlung people untersuchen
while (iterator.hasnext()) { // solange die sammlung noch weitere werte hat
for (int j=0; j<a.length; j++) {
if(iterator.next()) != a[j])
{
System.out.print("");
}
else
{
eins = eins + 1;
myHashMap.put(a[i], eins);
}
}
}
/////////
/////////
///////// oder muß ich das hier dafuer benutzen:::::::
//
for(String key : myHashMap.keySet())
{
eins = 0.00;
for (int j=0; j<a.length; j++) {
if(a[j] != key)
{
System.out.print("");
}
else
{
eins = eins + 1.00;
myHashMap.put(key, eins);
}
}
}
//
//
//
//
double whale = myHashMap.get("whale");
System.out.println("" + whale);
double faster = myHashMap.get("faster");
System.out.println("" + faster);
double bones = myHashMap.get("bones");
System.out.println("" + bones);
}
}