Gewusst wie: Bestimmen der Gesamtzahl von Vorkommen jeden Buchstaben des Alphabets im Text in Java

May 13

Gewusst wie: Bestimmen der Gesamtzahl von Vorkommen jeden Buchstaben des Alphabets im Text in Java

Berechnen der Häufigkeit des Vorkommens der einzelnen Buchstaben innerhalb einer Zeichenfolge ist eine Aufgabe, die entpuppt sich als komplexer, als Sie vielleicht erwarten. Der Prozess ist nicht unbedingt ein schwieriges Thema. Als mit jeder Programmieraufgabe müssen Sie es brechen in kleinere Schritte jeweils wiederum im Mittelpunkt. Es gibt verschiedene Möglichkeiten, Vorkommen der Zeichen in einer Zeichenfolge zu zählen, aber die einfachste Methode ist die Tatsache ausnutzen, dass Zeichen Urtyp Variablen mit numerischen Werten sind.

Anweisungen

1 Erstellen Sie Ihre Textzeichenfolge. Wenn Sie nicht bereits eine Zeichenfolge in Ihrem Programm verfügen, verwenden Sie den folgenden Code um zu erstellen:

Zeichenfolge Betreff = "Hier sind einige Zeichen in einer Zeichenfolge angeordnet";

Erstellen Sie ein Integer-Array um ein Zähler für jeden Buchstaben des Alphabets zu halten:

Int [] Buchstaben = new Int [26];

Instanziieren Sie Ihre Arrayelemente jeweils auf NULL zunächst festlegen:

für (Int l = 0; l < letters.length; l ++){Briefe [l] = 0;}

2 Erstellen Sie eine Schleife durchlaufen, die Zeichen in der Zeichenfolge. Verwenden Sie den folgenden Code, durchlaufen Sie die Zeichenfolge, jedes Zeichen als einen ganzzahligen Wert zu speichern:

für (Int c = 0; C < subject.length(); c ++) {}Int CharNum = subject.charAt(c);hier die Weiterverarbeitung}

Diese Schleife durchläuft einmal für jeden Buchstaben in der Zeichenfolge. Jedes Mal, wenn der Schleifenrumpf ausgeführt wird, speichert es das aktuelle Zeichen als einen primitiven Typ Integer.

3 Führen Sie einen bedingten Test auf den Charakter, um sicherzustellen, dass es ein Buchstabe ist. Fügen Sie den folgenden Test innerhalb der Schleife:

Wenn ((CharNum > = 'A' & & CharNum < = 'Z') || (CharNum > = 'a' & & CharNum < = 'Z')) {hier die Weiterverarbeitung}

Dieser Code führt zwei Paare von Tests. Das erste Paar getestet, ob das Zeichen zwischen den Großbuchstaben "A" und "Z" Zeichen ist. Das zweite paar getestet, ob das Zeichen zwischen den Kleinbuchstaben Versionen ist. Wenn entweder diese Paare von Test einen wahren Wert zurückgibt, führt der Inhalt die bedingte Anweisung; Wenn das Zeichen kein Buchstabe ist, gibt die gesamte Prüfung zurück.

4 Führen Sie eine Prüfbedingung checken für Kleinbuchstaben. Ihr Programm kann die Groß- und Kleinschreibung Versionen der Zeichen auf die gleiche Weise behandeln, aber sie haben verschiedene numerische Werte. Fügen Sie den folgenden Test innerhalb der If Anweisung:

Wenn (CharNum > = 'a' & & CharNum < =(char)'z') CharNum = 32;

Dieser Code weist das Programm die gleichen Zahlenwerte für die Kleinbuchstaben für die Großbuchstaben-Versionen zu verwenden, durch Subtraktion des Unterschied zwischen ihnen. Erhöhen Sie den Array-Element-Zähler für das aktuelle Zeichen wie folgt:

Briefe [CharNum-'A '] ++;

Dieser Code weist Java, eine an den Array-Zähler für das aktuelle Zeichen, mit dem Buchstaben A an Position 0 (null) und Z an Position 25 hinzuzufügen. Subtrahiert den Wert der Großbuchstabe gibt "A" dem Code die richtige Position.

5 Testen Sie Ihre Zählervariablen. Fügen Sie die folgende Schleife nach Ihrem Charakter-Schleife, die Werte bei jeder Zähler Element ausgeben:

für (Int i = 0; i < letters.length; i++){System.out.println((char)(i+'A') + "" + letters[i]);}

Jeder Buchstabe des Alphabets geschrieben neben den Zähler innerhalb der Zeichenfolge sollte angezeigt werden.

Tipps & Warnungen

  • Denken Sie an primitiven Typ-Charakter-Variablen und Werte in Java als ähnlich Zahlen.
  • Wenn Sie eine lange Zeichenfolge in Ihrem Programm haben, müssen die Schleife durchlaufen viele Male.