在Dart中,有一种将String转换为int的便捷方法:

int i = int.parse('123');

转换bool是否有类似的东西?

bool b = bool.parse('true');

最佳答案

bool(boolean) 没有方法。

var val = 'True';
bool b = val.toLowerCase() == 'true';

应该足够容易。

使用支持扩展方法的最新Dart版本,可以使代码看起来更像intnumfloat

extension BoolParsing on String {
  bool parseBool() {
    return this.toLowerCase() == 'true';
  }
}


void main() {
  bool b = 'tRuE'.parseBool();
  print('${b.runtimeType} - $b');
}

另请参阅https://dart.dev/guides/language/extension-methods

关于parsing - 在Dart中,是否有 `parse`的 `bool`和 `int`的一样?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21133935/

10-11 22:15
查看更多