問題タブ [ternary]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 奇妙な三項演算子 Javascript
三項演算子がどのように機能するかを理解しようとしていますが、この例に出くわしました:
どういう意味?AND演算子のように使用されていますか?これは通常のステートメントにどのように変換されますか? a=0 の前のコマは何を意味しますか? ありがとう!
c++ - 条件の三項演算子でコンマを使用したときに見つかったことはありますか?
さて、三項演算子のコンマについて質問がありました。コードは以下のとおりです。
出力は次のようになります。
これは合法ですか?
ruby-on-rails - Ruby の短い 3 進数はありますか?
これは私が見つけた最も近いものですが、数値ではなくブール値を扱っています: DRY up Ruby terary
コードを短く読みやすく保ちながら、Ruby での 0 による除算のシナリオを回避しようとしています。
次のコードをより簡潔にしたいと思います。
また
今読むのは本当に難しいようです。より多くのチェーンが含まれているため、percent_complete
実際にはかなり長くなります。この値もメソッドから返すので、また長くなります。
一時変数の使用やメソッド名の短縮は避けたいので、別の方法を学びたいと思っていました。
「percent_complete」を 2 回入力する必要がないようにできれば、ほとんど解決します。
java - Java: 戻り値のない 3 進数。(メソッド呼び出し用)
何も返さずに三項演算を行うことができるかどうか疑問に思っていました。
Java では不可能な場合、他の言語では可能ですか? 可能であれば、どの言語が適用されますか?
gnuplot - Gnuplot: データをフィルタリングするための日付の 3 項演算
次の形式のデータ ファイルがあります。
2012-02-05 2
2012-02-06 5
...
...
2012-02-10 11
2012-02-08 より大きいデータをプロットしたいと思います。次の三項演算を試しましたが、うまくいきません
plot 'datafile1' using 1:(strcol(1) gt "2012-02-08" ? $2 : 1/0) title "a" with lp lw 5,\
'datafile2' using 1:(strcol(1) gt "2012-02-08" ? $2 : 1/0) title "b" with lp lw 5
助言がありますか?ありがとう。
php - どのように、ステートメントがPHPによって理解されていない場合は?
私はif
声明を持っています、そして私はそれを2つの方法で書くことができます:
最初のものは機能していないようで、理由がわかりません??!!
私も試しました:
しかし、うまくいきません。
何か案は?
..つまり、2番目のオプションを使用できますが、なぜ機能しないのか興味があります。
ありがとう
c - 予期しない結果、GnuCの三項演算子
したがって、三項演算子の演算子の優先順位は、私にC
は本当に奇妙に思えます。適例:
これは、ここでの質問に似ているようです
。C++の3項条件付きおよび代入演算子の優先順位3項演算子の
評価順序
明確にするために、私の元の投稿のコメントが示しているように、括弧がそれを機能させることを理解しています...
最初のステートメントがコンパイラーごとに有効であるようにフォーマットされているように見えるのに、なぜ言語の作者が人々をだます可能性が高い評価方法を選ぶのか疑問に思っています。
しかし、これらの質問は、左側またはクラスメンバー内の演算子を扱っていますが、この奇妙な動作はRHSで発生します。
c - 演算子の優先順位と三項演算子
Cに問題があります。
このコードは2を出力しますが、a?b:cはb = 0を返し、0 ==0は1を返すと思います。コードを説明できますか?
scala - 同じコード ブロックでの reduce と fold の奇妙な動作
編集
OK、@dhg は、fold() へのコード ブロックが val にバインドされていない場合にドット メソッド構文が必要であることを発見しました (同じコード ブロックで reduce() を使用すると、スペース メソッド構文を使用できる理由はわかりません)。 )。いずれにせよ、最終結果は非常に簡潔です。
これは、元の質問をある程度否定します。つまり、多くの場合、いずれかまたは両方のシナリオを高次から切り離し、「太い」反復的な if/else ステートメントを避けることができます。
ORIGINAL
List[T] のような空の可能性のあるコレクションを操作する場合の if/else 処理を削減しようとしています
たとえば、最新のニュース記事を取得してhtml newsのNodeSeq<li><a>links</a></li>
を作成する必要があるとします。
これは問題ありませんが、非常に簡潔ですが、次のいずれかまたは両方のケースに対処するために、三項スタイルに移行したいと考えています。
三項をブール値にポンピングするという古い投稿を見たことがありますが、if/elseを合理化するための代替手段があれば知りたいですか?
match {...}
IMOは、このシナリオでは少し肥大化しており、for {...} yield
あまり役に立たないようです.