Menu
CoddyTech

统计单词数

本课属于 Coddy Dart 学习旅程的“逻辑与流程控制”单元。第 54 课,共 65 课。

challenge icon

挑战

简单

继续完成你的文本分析器项目,接下来你将实现单词计数功能。这一步会统计文本中的单词总数,并在上一课拆分单词的基础上继续完成分析。

  1. 使用你之前设置的 textToAnalyze 变量
  2. 使用你在字符计数步骤中设置的 totalCharacters 变量
  3. 使用你在拆分单词步骤中设置的 wordList 变量
  4. 使用单词列表的 .length 属性统计单词总数
  5. 将单词计数存储在名为 totalWords 的变量中
  6. 按照下方显示的准确格式显示单词计数分析结果
  7. 以正确的格式显示原文、字符数、单词列表和单词数

例如,如果你的文本分析器设置为 "Hello world!",程序应输出:

Text Analysis Tool - Word Count
====================================
Analyzing text: "Hello world!"
Total characters: 12
Words found: [Hello, world!]
====================================
Word Count Results:
Total words: 2
====================================
Word counting completed successfully.

如果你的文本分析器设置为 "The quick brown fox",程序应输出:

Text Analysis Tool - Word Count
====================================
Analyzing text: "The quick brown fox"
Total characters: 19
Words found: [The, quick, brown, fox]
====================================
Word Count Results:
Total words: 4
====================================
Word counting completed successfully.

如果你的文本分析器设置为 "Programming is fun!",程序应输出:

Text Analysis Tool - Word Count
====================================
Analyzing text: "Programming is fun!"
Total characters: 19
Words found: [Programming, is, fun!]
====================================
Word Count Results:
Total words: 3
====================================
Word counting completed successfully.

程序应使用单词列表的 .length 属性,确定文本拆分后找到了多少个单词。单词数能提供文本复杂程度的重要信息,在接下来的课程中也会与其他分析指标结合使用。

亲手试试

import 'dart:io';

void main() {
  String? textToAnalyze = stdin.readLineSync();
  int totalCharacters = textToAnalyze!.length;
  
  List<String> wordList = textToAnalyze.split(' ');
  
  print('Text Analysis Tool - Word Splitting');
  print('====================================');
  print('Analyzing text: "$textToAnalyze"');
  print('Total characters: $totalCharacters');
  print('====================================');
  print('Word Splitting Results:');
  print('Words found: $wordList');
  print('====================================');
  print('Word splitting completed successfully.');
}

逻辑与流程控制中的所有课

自己练习: Dart 在线编译器