Eindeutige Wörter zählen
Teil des Abschnitts Logik & Ablauf der Dart-Journey von Coddy — Lektion 55 von 65.
Aufgabe
EinfachIn Fortsetzung Ihres Textanalyse-Projekts werden Sie nun die Funktionalität zum Zählen eindeutiger Wörter implementieren. Dieser Schritt bestimmt, wie viele verschiedene Wörter in Ihrem Text vorkommen, indem ein Set verwendet wird, um Duplikate automatisch aus Ihrer Wortliste zu entfernen.
- Verwenden Sie die Variable
textToAnalyzeaus Ihrem vorherigen Setup - Verwenden Sie die Variable
totalCharactersaus Ihrem Schritt zur Zeichenzählung - Verwenden Sie die Variable
wordListaus Ihrem Schritt zur Worttrennung - Verwenden Sie die Variable
totalWordsaus Ihrem Schritt zur Wortzählung - Konvertieren Sie die Wortliste mit
Set.from()in ein Set, um doppelte Wörter automatisch zu entfernen - Speichern Sie das resultierende Set in einer Variablen namens
uniqueWordsSet - Zählen Sie die Anzahl der eindeutigen Wörter mit der Eigenschaft
.lengthdes Sets - Speichern Sie die Anzahl der eindeutigen Wörter in einer Variablen namens
uniqueWordCount - Zeigen Sie die Ergebnisse der Analyse der eindeutigen Wörter im unten gezeigten exakten Format an
- Geben Sie den Originaltext, die Zeichenanzahl, die Wortliste, die Gesamtzahl der Wörter, das Set der eindeutigen Wörter und die Anzahl der eindeutigen Wörter mit der richtigen Formatierung aus
Wenn Ihr Textanalysator beispielsweise mit "Hello world hello" eingerichtet wurde, sollte Ihr Programm Folgendes ausgeben:
Text Analysis Tool - Unique Words
====================================
Analyzing text: "Hello world hello"
Total characters: 17
Words found: [Hello, world, hello]
Total words: 3
====================================
Unique Word Analysis Results:
Unique words: {Hello, world, hello}
Unique word count: 3
====================================
Unique word analysis completed successfully.Wenn Ihr Textanalysator mit "The cat and the dog" eingerichtet wurde, sollte Ihr Programm Folgendes ausgeben:
Text Analysis Tool - Unique Words
====================================
Analyzing text: "The cat and the dog"
Total characters: 19
Words found: [The, cat, and, the, dog]
Total words: 5
====================================
Unique Word Analysis Results:
Unique words: {The, cat, and, the, dog}
Unique word count: 4
====================================
Unique word analysis completed successfully.Wenn Ihr Textanalysator mit "apple banana apple cherry banana" eingerichtet wurde, sollte Ihr Programm Folgendes ausgeben:
Text Analysis Tool - Unique Words
====================================
Analyzing text: "apple banana apple cherry banana"
Total characters: 33
Words found: [apple, banana, apple, cherry, banana]
Total words: 5
====================================
Unique Word Analysis Results:
Unique words: {apple, banana, cherry}
Unique word count: 3
====================================
Unique word analysis completed successfully.Ihr Programm sollte Set.from() verwenden, um die Wortliste in ein Set zu konvertieren, das automatisch doppelte Wörter entfernt und die eindeutigen Wörter beibehält. Die Eigenschaft .length des Sets liefert Ihnen die Anzahl der eindeutigen Wörter. Diese Analyse hilft dabei, den Wortschatzreichtum des Textes zu identifizieren, und wird zusammen mit anderen Metriken in den kommenden Lektionen verwendet.
Probier es selbst
import 'dart:io';
void main() {
String? textToAnalyze = stdin.readLineSync();
int totalCharacters = textToAnalyze!.length;
List<String> wordList = textToAnalyze.split(' ');
int totalWords = wordList.length;
print('Text Analysis Tool - Word Count');
print('====================================');
print('Analyzing text: "$textToAnalyze"');
print('Total characters: $totalCharacters');
print('Words found: $wordList');
print('====================================');
print('Word Count Results:');
print('Total words: $totalWords');
print('====================================');
print('Word counting completed successfully.');
}Alle Lektionen in Logik & Ablauf
1Fortgeschrittene Listenmanipulation
Listen-Eigenschaften: first & lastListen-Status: isEmpty & isNotEmptyEine Liste umkehrenHinzufügen zu einer Liste: insertElemente aus Liste entfernen: removeWhereSuchen in einer Liste: indexOfEine Liste sortierenEine Liste mischenZusammenfassung – Listen-Organizer4Fortgeschrittene Map-Manipulation
Über eine Map iterierenPrüfen auf Schlüssel und WerteMap-Eigenschaften: keys & valuesBedingtes Hinzufügen: putIfAbsentEinträge aus einer Map entfernenVerschachtelte MapsRückblick – Inventar-Update7Fortgeschrittene Funktionen
Anonyme FunktionenFunktionen als Argumente übergebenClosures verstehenEinführung in die RekursionRekursive Funktion: CountdownRekursive Funktion: FakultätZusammenfassung – List Processor10Abschluss-Herausforderungen
Herausforderung: NotensortiererHerausforderung: VokalzählerHerausforderung: FizzBuzz2Funktionale Listenoperationen
Transformieren mit 'map'Filtern mit 'where''.toList()' verwendenBedingungen prüfen mit 'any'Bedingungen mit 'every'Suchen mit 'firstWhere'Zusammenfassung – Datenfilterung5Projekt: Warenkorb-Rechner
Projekt-SetupArtikel zum Warenkorb hinzufügen8Projekt: Einfacher Text-Analyzer
Projektübersicht und SetupZeichen zählen3Sets
Was ist ein Set?Ein Set erstellenHinzufügen und Entfernen in SetsPrüfen auf Elemente in einem SetEine Liste in ein Set umwandelnSet-VereinigungSet-SchnittmengeSet-DifferenzRückblick – Einzigartige Gästeliste