問題タブ [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.

0 投票する
3 に答える
164 参照

c - 三項演算子の異常な使用

私はCの初心者です。三項演算子が有用であり、if/elseブロックよりもコードが少ない理由を理解しています。

私は維持するためにいくつかのCコードを与えられました、そして私が気づいたことの1つは、以前のプログラマーがこのような三項演算子を使用したことです

これはこれとまったく同じことを達成しますか?

これは単なるスタイルのものですか?おそらく、「if」ではなく「if not」myIntを考えるのは理にかなっていますか?

0 投票する
2 に答える
724 参照

c++ - 右辺値ではない三項演算子の結果

このプログラムをC++11コンパイラでコンパイルする場合、ベクトルは関数の外に移動されません。

このようにインスタンスを返すと移動します。

これがideoneのデモです。

gcc4.7.0とMSVC10で試してみました。どちらも同じように動作します。
これが発生する理由は次
のとおりです。三項演算子の型は、returnステートメントが実行される前に評価されるため、左辺値です。この時点で、aとbはまだxvaluesではありません(まもなく期限切れになります)。
この説明は正しいですか?

これは規格の欠陥ですか?
これは明らかに意図された動作ではなく、私の意見では非常に一般的なケースです。

0 投票する
7 に答える
90495 参照

python - 他なしのPython三項演算子

Pythonでこれを1行で行うことは可能ですか?

三項演算子を試しました:

しかし、私のIDE(MyEclipse)は、else.

0 投票する
9 に答える
53647 参照

c - Cのelseなしの三項演算子.

Cでelseなしで三項演算子を使いたいのですが、どうすればいいですか?

このようなもの。何もない部分で何を使用しますか?

0 投票する
1 に答える
492 参照

php - PHP 三項演算子を使用して特定の値を返す

私はこれをグーグルで検索し、すでにスタックオーバーフローを閲覧しました。私は自分のコードを短くしようとしていますが、この作業方法を以下に示します。三項スタイルで書き直したいと思います。これが可能かどうか、もしそうなら、何が間違っているのか教えてもらえますか。ありがとう。

私はこれから始めました:

予期しないリターンエラーが発生します。

値の前に戻り値をリストし、機能しなかった別のスタック オーバーフロー ソリューションを使用してみました。

これにより、メソッドが正しく閉じられないなど、予期しない public に関する別のエラーが発生します。

0 投票する
4 に答える
14720 参照

java - 三項演算子を使用してメソッドを呼び出すJAVA

私は使用しようとしていますか?どのメソッドを呼び出すかを決定しますが、変数を割り当てる必要はありません。私の質問: 変数を割り当てずに三項演算子を使用する方法はありますか?

それ以外の

0 投票する
6 に答える
2470 参照

c - 指定された 3 進数文字列の 1 つまたは 2 つの文字を含む連続した部分文字列

インタビューの 1 つの質問は次のとおりでした。3 進文字列が与えられた場合、与えられた 3 進文字列の 1 つまたは 2 つの文字のみを含む連続した部分文字列の数を見つけます。3 進文字列は、最大 3 文字で構成される文字列です。例のように: bcabb は集合 {a,b,c} の 3 値文字列です。上記の例に対する答えは、b,c,a,b,b,bc,ca,ab,bb ie.,9 となります。

注: 部分文字列は、一意性ではなく開始インデックスと終了インデックスによって決定されます。

この質問で従うべきアルゴリズムを誰か教えてください。

0 投票する
1 に答える
2067 参照

jstl - JSTL を 3 進数に変更

このJSTLタグをJSTL三項に変換するのを手伝ってくれませんか

0 投票する
3 に答える
2134 参照

java - 自動ボクシングによるNullPointerException-Java三項演算子の動作

NullPointerException先日、三項演算子の予期しない型キャストが原因で、本当に奇妙なことに遭遇しました。この(役に立たない模範的な)関数を考えると:

コンパイル後、次の2つのコードセグメントが完全に同一になることを期待していました。

対。

の場合、 -ステートメントconditionは正常に機能しますが、2番目のコードセグメントの三項演算子は。をスローします。三項演算は、結果を自動ボックス化して!?!に戻す前に、両方の選択肢を型キャストすることを決定したようです。実際、明示的にtoをキャストすると、例外はなくなります。言い換えると:trueifNullPointerExceptionintInteger0Integer

と同じではありません:

if-elseしたがって、三項演算子と同等のステートメント(私が予期していなかったもの)の間にはバイトコードの違いがあるようです。これは3つの質問を提起します:なぜ違いがあるのですか?これは三項実装のバグですか、それとも型キャストの理由がありますか?違いがあるとすると、三項演算は同等のステートメントよりも多かれ少なかれパフォーマンスが高くなりますかif(私は知っていますが、違いは大きくはありませんが、それでも)?

0 投票する
1 に答える
268 参照

python - kwargsをre.sub()に渡します

Pythonでは、テンプレート文字列内に疑似三項演算子を実装しようとしています。kwargs特定のキーがある場合、値が文字列に挿入されます。

reモジュールには、私が必要としていることを正確に実行する方法がありre.sub()ます。一致時に呼び出される関数を渡すことができます。私ができないことはそれに渡す**kwargsことです。コードは次のとおりです

if match.groups()[0] in kwargs:もちろん、process_pseudo_ternarykwargsは空なので、 lineが問題になります。

これらを渡す方法についてのアイデアはありますか?m.sub(function, string)引数を取りません。

最終的な文字列は次のようになりますsome text val_if_true some text(辞書には「pseudo_test」という名前のキーがあるため)。

文字列内の三項演算子の別の実装に自由にリダイレクトしてください。Pythonの条件付き文字列フォーマットを知っています。文字列のフォーマットタプル/辞書ではなく、文字列にターナリを含める必要があります。