Java Academy · Lektion

Implementering

Omsæt planen til kode: normalisér, tokenisér, tæl, og udskriv de bedste resultater i små, overskuelige trin.

Lektion 2 af 38 trin

Implementering er en gratis Java Academy-lektion på CoddyKit. Dette er lektion 2 af 3. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i Java Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Java Academy-kurset indeholder 3 lektioner i alt.

Opsummering af planen

Opsummering af planen: Konvertér til små bogstaver, fjern tegnsætning, opdel i tokens, tæl med en opslagstabel, og udskriv derefter totaler og top N. Hold hvert trin lille og tydeligt.

Normalisering

Normalisering: Gør teksten til små bogstaver, og erstat tegn, der ikke er bogstaver, med mellemrum. Det forhindrer separate tokens for Be og be og fjerner kommaer og punktummer.

Tokenisering

Tokenisering: Opdel teksten ved blanktegn for at få rene ord. Fjern indledende og afsluttende mellemrum først, så det første token ikke bliver tomt.

Optælling

Optælling: Brug en HashMap fra ord til antal. For hvert token øger du antallet eller indsætter 1, hvis ordet mangler.

Rapportering

Rapportering: Udskriv det samlede antal og antallet af unikke ord, og vis derefter de N hyppigste ord. For små tekster er en simpel udvælgelsesløkke tilstrækkelig.

Kode: fuld kørsel

Kør koden: Du bør se samlede antal, antal unikke ord og en topliste. For store tekster kan du erstatte udvælgelsen med sortering eller en min-heap.

public class Main {
  public static void main(String[] args) {
    // Implementation: normalize, tokenize, count, and print top 5.
    String text = "Be yourself; everyone else is already taken. Be kind. Be clear.";
    // 1) Lowercase
    String lower = text.toLowerCase();
    // 2) Replace non letters with spaces
    String cleaned = lower.replaceAll("[^a-z]+", " ");
    // 3) Split on spaces and filter empties
    String[] tokens = cleaned.trim().split("\\s+");

    java.util.Map<String, Integer> freq = new java.util.HashMap<>();
    int total = 0;
    for (int i = 0; i < tokens.length; i = i + 1) {
      String w = tokens[i];
      if (w.length() == 0) continue;
      total = total + 1;
      Integer c = freq.get(w);
      if (c == null) freq.put(w, 1);
      else freq.put(w, c + 1);
    }

    // Print top 5 words using repeated selection (simple for small data)
    int topN = 5;
    for (int k = 0; k < topN; k = k + 1) {
      String bestWord = null;
      int bestCount = -1;
      for (java.util.Map.Entry<String,Integer> e : freq.entrySet()) {
        String word = e.getKey();
        int count = e.getValue();
        if (count > bestCount) {
          bestCount = count;
          bestWord = word;
        }
      }
      if (bestWord == null || bestCount < 0) break;
      System.out.println("#" + (k + 1) + " " + bestWord + " = " + bestCount);
      // mark as used so it will not be picked again
      freq.put(bestWord, -1000000);
    }

    System.out.println("Total words: " + total);
    System.out.println("Unique words: " + (freq.size()));
  }
}

Konsistenskontrol

Hurtigt tjek: Hvilket trin er afgørende for ensartet optælling på tværs af store og små bogstaver samt tegnsætning?

Opsummering

Opsummering: Du implementerede arbejdsgangen fra start til slut. Derefter tester vi med kanttilfælde og ser på enkle udvidelser.

Gratis at komme i gang

Lær Java med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
104
Lektioner
374

Ofte stillede spørgsmål

Er lektionen “Implementering” gratis?

Ja — hele teksten til “Implementering” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af Java Academy-kurset, skal du opgradere til CoddyKit PRO. Java Academy-kurset indeholder 3 lektioner i alt.

Hvad lærer jeg i “Implementering”?

Omsæt planen til kode: normalisér, tokenisér, tæl, og udskriv de bedste resultater i små, overskuelige trin. Du øver dig i Java Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på Java Academy?

Der kræves ingen tidligere erfaring. Java Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 2 af 3.

Hvor lang tid tager lektionen “Implementering”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne Java Academy-lektion?

Ja. Alle Java Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Krav og design
  2. Implementering
  3. Test og udvidelser
← Tilbage til Java Academy