Slik søker du etter antall forekomster av hver karakter i en String i Java

Flere metoder kan benyttes for å telle hyppigheten av hvert tegn i en gitt streng i Java. Men tar den enkleste nytte av "HashMap" data struktur, som gjør det mulig å forholde seg en nøkkel til en verdi. I dette tilfellet vil nøkkelen bli bokstaven i alfabetet, og verdien vil være antall forekomster av bokstaven så langt i opptellingen.

Bruksanvisning

1 Åpne en teksteditor eller din favoritt Java Integrated Development Environment (IDE).

2 Lim inn følgende kode inn i editoren:

public class LetterFrequency {

public static void main(String[] args) {

String s = "Dette er en streng.";

String temp = s.toUpperCase ();

char [] arr = temp.toCharArray ();

HashMap & lt; Character, Integer> count = new HashMap & lt; Character, Integer> ();

for (char c: arr) {

try {

count.put (c, count.get (c) en);

} Catch (NullPointerException e) {

count.put (c, 1);

}

}

for (Character c: count.keySet ()) {

System.out.println (c + "=" + count.get (c));

}

}

}

Dette skaper et eksempel streng og konverterer alle bokstavene til store bokstaver, så koden ikke skal skille mellom store og små bokstaver. Den henter da en rekke hver tegnet i strengen og skaper en "HashMap" som er relatert tegn til heltall. Deretter fortsetter det gjennom hver bokstav i rekken og øker teller i "HashMap" av en. Hvis tegnet aldri har vært sett før, og derfor genererer en "NullPointerException," det er lagt til rekken og gitt en verdi på "1" Endelig er en rapport skrevet for brukeren.

3 Lagre arbeidet ditt. Hvis du bruker en IDE, kan du kjøre programmet direkte ved å klikke på knappen Kjør.

Hint

  • Denne algoritmen tar ikke vare brev orden i den endelige rapporten. Det vil også inneholde mellomrom og skilletegn i rapporten.