答えて
これは間違っています。現代のコンパイラとインタプリタはすべて最適化します。
私にとって(少なくとも私にとって)重要なのは、== true
がMEの解釈がはるかに速いことです。
早すぎる最適化はすべての悪の根源です。
編集:はい、私はif(true)
を使用します。しかしそれは問題ではありませんでした。
+1、これは唯一の有効な回答です。「問題ではありません。 :-) –
+1それは人間のために良いことを指摘してください。 – ChrisF
もちろん、 '== true'はとにかく完全に冗長で、ほとんどの場合省略できます。 –
心配しないでください!
どのような半期の言語でも、ハイレベルのコードはどのような低レベルのコンストラクトにも変換されます。
最も読みやすいコードを生成する構造体を使用してください。ほとんどの言語では明示的に比較する必要はありません。可能であればif (foo == true)
またはif (foo != false)
ではなくif (foo)
を使用してください。
決して、任意の非ゼロ値はから当量(必ずしもそうではないがに等しい)真である少なくともC
で== true
ため、これまで、試験、C++
、Objective C
または関連する言語。許容
:
if (x)
if (!x)
if (x == false)
if (x != false)
間違っ及び危険:
if (x == true)
if (x != true)
性能局面は完全に無関係です。
もちろん、物事の壮大な計画では問題ではなく、読みやすさが重要です。しかしそれは何ですか?どうやって見つけますか?私たちはそれをテストします。公平を期すために、私たちは真==でTrueとFalseの値の等しい数をテストしますと= Pythonで偽:!
>>> from timeit import Timer
>>> import time
>>> f=Timer('x=True;x!=False;x=False;x!=False',timer=time.clock)
>>> t=Timer('x=True;x==True;x=False;x==True',timer=time.clock)
>>> f.timeit(number=10000000)
3.2700000000000005
>>> t.timeit(number=10000000)
3.629999999999999
は今、これはいくつかはtimeitランオーバーはかなり一貫しています。ワオ。 != Falseのテストは、== Trueのテストよりも速いです。あなたが10,000,000回する必要がある場合、あなたは0.5秒間勝つでしょう。その時をお楽しみください。
- 1. エラーデバッグ{:TRUE/FALSEが
- 2. Fresco - setDownsampleEnabled true/false?
- 3. トグルクッキーtrue false magento
- 4. make html.checkboxfor enable true false
- 5. チェックボックスの値true/false
- 6. ツールバーsethidden = TRUE、sethidden = FALSE
- 7. Excel「true-false」チェックボックスに
- 8. MLEのニュートンラフソンコード - TRUE/FALSEが必要なTRUE/FALSEが必要です。
- 9. knitrチャンクオプションeval = TRUE、echo = TRUE、include = FALSE
- 10. checked = "checked" vs checked = true
- 11. mysql true/false/mc questionsテーブル
- 12. jQueryの値trueとfalse
- 13. どうTrueまたはFalse
- 14. ジャンゴ、デバッグTrueまたはFalse
- 15. パンダ:True/Falseにピボット、ドロップカラム
- 16. "!= true"と "== false"の違いは?
- 17. jQuery:nextEl = someEl.next(function(){... return true/false;})?
- 18. Ruby、True/false正規表現
- 19. PHP trueまたはfalse
- 20. AutomaticMigrationsEnabled falseまたはtrue?
- 21. 文字列とTrue/False
- 22. true/falseをdoubleとする
- 23. true-falseテーブルのmaterial-uiラジオボタン
- 24. VBAグループ行TRUE/FALSE条件
- 25. Ember-cli ember serve AssertionError(false == true)
- 26. MySQL WorkbenchのTrue/Falseデータ型
- 27. true/falseを返すコールバック
- 28. Boolプロパティshow True&False項目
- 29. False True change attr onclick jQuery
- 30. なぜTrue!= True!= TrueがFalseに評価される
わかりませんが、決して書き込みません!= falseまたは== trueとにかく、(〜x)かif(x) - あなたの選択した言語に翻訳してください。 –
これは完全に言語(および実装)固有のものだと思います。 – Cameron
@ハイパフォーマンスマーク:最近のトレンドは、逆の方向に向いていると思います。読みやすさが問題で、パフォーマンスがないからです。 – Eiko