【问题标题】:Only assignment call increment decrement await and new object expressions can be used as a statement只有赋值调用递增递减等待和新对象表达式可以作为语句使用
【发布时间】:2016-06-27 14:53:42
【问题描述】:

我的代码有问题:

string yn = Console.ReadLine ();
int yes;
yn == "Y" ? (yes = 1) : (yes = 0);

我明白了:

只有赋值调用递增递减等待和新对象 表达式可以用作语句

但我不知道该怎么办! 请帮忙!

【问题讨论】:

    标签: c#


    【解决方案1】:

    更改yn == "Y" ? (yes = 1) : (yes = 0);

    改为这个。

    yes = yn == "Y" ? 1 : 0;
    

    因为在使用?: 时需要将其分配到某个地方。当你写的时候你会得到同样的错误。

    1;
    

    【讨论】:

    • 另一种方式但不推荐Convert.ToInt32(yn == "Y") :)
    【解决方案2】:

    @m.kazem 是如何解释它的,但是我通常用括号表示正在测试一个条件。例如:

    yes = (yn=="Y") ? 1 : 0;
    

    所以如果yn 等于“Y”,则将整数设置为 1,否则将其设置为 0

    【讨论】:

      猜你喜欢
      • 2015-07-05
      • 1970-01-01
      • 2023-03-05
      • 1970-01-01
      • 2020-04-08
      • 2020-11-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多