DEV Community

Discussion on: Daily Challenge #178 - Create Phone Numbers

Collapse
 
exts profile image
Lamonte • Edited

Dart - I'm all about being explicit and ensuring the expected result is what I want rather than trying to be creative and smart.

String createPhoneNumber(List<int> numbers) {
  numbers = numbers.takeWhile((num) => num < 10).toList();
  if(numbers.length < 10) return null;
  var result = StringBuffer("(");
  for(var idx = 0; idx < numbers.length; idx++) {
    result.write(numbers[idx]);
    switch(idx) {
      case 2: 
        result.write(") ");
        break;
      case 5:
        result.write("-");
        break;
    }
  }
  return result.toString();
}