gpt4 book ai didi

flutter - Dart-如何使用NullAware运算符简化IF条件

转载 作者:行者123 更新时间:2023-12-03 03:16:32 25 4
gpt4 key购买 nike

有没有一种方法可以简化此条件子句:

if (_username != null &&_username.isNotEmpty  && _pass != null && _pass.isNotEmpty){
connectionBloc.dispatch(GetUserInfoEventImpl(_username, _pass));
}

使用Null-Aware运算符?

我试过了:
if (_username?.isNotEmpty?? false && _pass?.isNotEmpty?? false){
connectionBloc.dispatch(GetUserInfoEventImpl(_username, _pass));
}

但是我认为这是有问题的,因为Android Studio指出无法达到右侧的条件,这是不正确的。

最佳答案

使用null感知访问,您必须将结果显式比较true或false:

  if (_username?.isNotEmpty == true && _pass?.isNotEmpty == true) {
...
}

至于您的变体,该代码没有括号,因为 Null coalescence operator的优先级最低:
  if ((_username?.isNotEmpty ?? false) && (_pass?.isNotEmpty ?? false)) {
...
}

关于flutter - Dart-如何使用NullAware运算符简化IF条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57781011/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com