飞镖开关盒无法正常工作

时间:2019-05-01 10:18:05

标签: dart flutter dart-html

我正在尝试使用开关盒,但是它表现得很奇怪。对于某些输入,它起作用,而对于某些输入,它不起作用。我检查了输入值,发现它们适合满足条件。请帮忙。我是新来的飞镖和飞镖。

我试图通过if-else if实现。即使那样对我也不起作用。

    List<String> lstNames = List<String>();
    lstNames.addAll(["Dividends INR", "Payout Ratio % *", "Operating Cash Flow INR Mil", "Cap Spending INR Mil", "Free Cash Flow INR Mil"]);
    for(String ItemHeading in lstNames){

    switch (ItemHeading) {
      case '' :
        break;
      case 'Dividends INR':
        {/*Doing something.*/}
        break;
      case 'Payout Ratio % *':
        {/*Doing something.*/}
        break;
      case 'Operating Cash Flow INR Mil':
        {/*Doing something.*/}
        break;
      case 'Cap Spending INR Mil':
        {/*Doing something.*/}
        break;
      case 'Free Cash Flow INR Mil':
        {/*Doing something.*/}
        break;
      default:
        break;
    }
  }

在上面的代码中,基于lstNames中的字符串,我正在尝试运行切换用例。 lstRows中Elements包含的字符串值是{股息INR,支付比率%*,运营现金流INR米尔,上限支出INR米尔,自由现金流INR米尔}。 “付款比例%*”的情况有效。对于其他情况,它仅跳过/跳转到下一个情况并退出。请帮忙。让我知道是否需要更多信息来调试它。

1 个答案:

答案 0 :(得分:1)

编辑: addAll()需要一个iterable

lstNames.addAll(["Dividends INR", "Payout Ratio % *", "Operating Cash Flow INR Mil", "Cap Spending INR Mil", "Free Cash Flow INR Mil"]);

将项目放入列表中。


您使用了错误的评论

//注释了整行以及结尾处的}

/* */要使用

  case 'Dividends INR':
    {/*Doing something.*/}
    break;
  case 'Payout Ratio % *':
    {/*Doing something.*/}
    break;

dartlang