ブール式で「=>」演算子を使用するにはどうすればよいですか?私はこれに似た何かに考えていたブール式で=>演算子を使用する
// not a good function declaration
void toggle => isOpen = !isOpen;
:
shutUp()
がその関数である
void toggle => shutUp(isOpen = !isOpen);
「!いるisOpen =いるisOpen」はブール値を返しますので、たとえば、次の宣言は、間違っていますvoid
の値を返し、ブール型パラメータを受け入れます。
var isOpen = false;
var toggle =() => isOpen = !isOpen;
toggle();
print(isOpen);
toggle();
print(isOpen);
Thanskを。それは奇妙ですが、それは動作します。 – Cequiel
=> xは{return xの省略形です。 }。関数は次のように書くことができます:toggle()=> isOpen =!isOpen;名前のない無名関数は同じです:()=> isOpen =!isOpen ;. [これ以上のことはこちら](https://www.dartlang.org/resources/dart-tips/dart-tips-ep-7) – Alvis
それはうまく動作するわけではありません。 'bool toggle()=> isOpen =!isOpen;'とほぼ同じですが、より複雑な形で書かれています。メソッドのためにおそらく動作しない方法 - 'toggle()'メソッドのシグネチャを 'var toggle'で実装することはできません。このソリューションの使用はお勧めしません。 – lrn