Home > Net >  How to count the occurence of each word from the string? Dart
How to count the occurence of each word from the string? Dart

Time:10-28

void main (){
  print(occurence("hello hi hello one two two three"));
}

occurence(text){
  var words = text.split(" ");
  print(words);
  var count = {};
  words.map((element) => {
    if (count[element]){
      count[element] =1
    }else{
     count[element] =1
      }
  });
  return count;
}

I want to get this output: {hello:2, hi:1, one:1, two:2, three:1}

Where's the problem in my code, I just get {} when I run the program.

CodePudding user response:

You should use the update function like this:

void main (){
  print(occurence("hello hi hello one two two three"));
}

occurence(text){
  var words = text.split(" ");
  print(words);
  var count = {};
  for (var word in words) {
      count.update(word, (value) => value   1, ifAbsent: () => 1);
  }
  return count;
}
  • Related