問題タブ [conditional-statements]

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 投票する
2 に答える
162 参照

xml - 属性に基づく条件を満たしているノードの数

以下は、 PHP の XSLTProcessorで処理している XML の一部です。

x == y の場所に「uf」ノードがいくつ存在するかを知る必要があります。

上記の例では、2 になります。

カウンタ変数のループとインクリメントを試みましたが、変数を再定義できません。

xsl:number と count/from の組み合わせをたくさん試しましたが、XPath 式を正しく取得できませんでした。

ありがとう!

0 投票する
12 に答える
98515 参照

conditional-statements - 条件で代入を使用するのはなぜですか?

多くの言語では、代入は条件付きで合法です。この背後にある理由がわかりませんでした。なぜあなたは書くのですか:

それ以外の:

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

c# - C# で繰り返されるハードコードされたループと条件を削除する

同じオブジェクトの 2 つのインスタンスを比較し、それらの違いのリストを生成するクラスがあります。これは、主要なコレクションをループし、他のコレクションのセットに変更内容のリストを入力することによって行われます (これは、以下のコードを参照するとより理解できるかもしれません)。これは機能し、「古い」オブジェクトと「新しい」オブジェクトの間で何が追加および削除されたかを正確に知らせるオブジェクトを生成します。
私の質問/懸念はこれです...それは本当に醜いです、たくさんのループと条件があります。ハードコーディングされた条件の無限のグループに大きく依存することなく、これを保存/アプローチするより良い方法はありますか?


対象となるフレームワークは 3.5 です。

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

java - 別のスレッドで条件が解決されるまで、1 つのスレッドをスリープ状態にする

これは、(私が思うに) 同じことを達成する 2 つのコードの塊です。

私は基本的に、Java 1.5 の同時実行性を使用して Thread.sleep(long) から逃れる方法を学ぼうとしています。最初の例では ReentrantLock を使用し、2 番目の例では CountDownLatch を使用しています。私がやろうとしていることの要点は、別のスレッドで状態が解決されるまで、1 つのスレッドをスリープ状態にすることです。

ReentrantLock は、他のスレッドをウェイクアップするかどうかを決定するために使用しているブール値にロックを提供し、次に条件を await/signal と共に使用して他のスレッドをスリープさせます。私が知る限り、ロックを使用する必要がある唯一の理由は、複数のスレッドがブール値への書き込みアクセスを必要とする場合です。

CountDownLatch は ReentrantLock と同じ機能を提供しているようですが、(不要な?) ロックはありません。ただし、必要なカウントダウンが1つだけで初期化することで、意図した用途を乗っ取っているような気がします。複数のスレッドが1つのタスクで待機している場合ではなく、複数のスレッドが同じタスクで動作する場合に使用することになっていると思います。

だから、質問:

  1. ReentrantLock コードで「正しいこと」のためにロックを使用していますか? 1 つのスレッドでブール値にのみ書き込みを行う場合、ロックは必要ですか? 他のスレッドを起動する前にブール値をリセットする限り、問題は発生しませんよね?

  2. このタスクにより自然に適した、ロックを回避するために使用できる CountDownLatch に似たクラスはありますか (このインスタンスではロックを回避する必要があると仮定します)。

  3. このコードを改善するために知っておくべき他の方法はありますか?

例 1:

例 2:

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

ruby-on-rails - Thinking Sphinx indexing non-expired records

What would be the best approach to have Thinking Sphinx only index records where Today's date is less than or equal to the record's "expires_at" field?

Thanks in advance.

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

c++ - ループでの条件評価?

何回strLine.length()評価されるか

ループの直前に割り当てられたものを使用nLengthする必要がありますかnLengthstrLine.length()

0 投票する
12 に答える
416 参照

conditional-statements - Which is the preferred condition in loop?

Which one is preferred?

This was example from "Accelerated C++ : practical programming by example / Andrew Koenig, Barbara E. Moo." Just wanted to know why the Author prefers the first one

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

c++ - GCC でのブースト スレッド コンパイラ エラー

Linux、gcc 4.3 で、boost::thread 実装とミューテックス / 条件変数を使用してクラスをコンパイルすると、明らかに posix スレッド ライブラリとの型の競合が原因で、次の奇妙なエラーが発生します。

コードは次のとおりです。

クラス宣言で

オペレータ エラーは、boost の condition.hpp で発生します。

Boost 1.38.0 を使用しています。Windows では問題はありません。どんな助けでも大歓迎です!

0 投票する
8 に答える
9520 参照

zend-framework - Zend Studio は警告を報告します: 状態での割り当て。これはそんなに悪いことですか?

最近、次のタイプのコードを警告していると報告されている Zend Studio の使用を開始しました。

警告を停止するには、コードを次のように記述する必要があります。

これが警告としてマークされているのはなぜですか? それはとても悪いですか?

警告が次のようなエラーを停止するように設計されている可能性があることを理解しています。

$a に対してテストされ、$a が 1 でない場合に while ステートメントに false を返すのではなく、$a に 1 が代入され、while ステートメントに 1 が返されるため、決して終了しません。

警告を検証する可能性のある簡単なエラーは認められますが、2番目の例のwhileブロックの最後に余分な $f = fetch($q) を追加するのを忘れているため、決して終了しないループが発生します. コードを変更して警告を削除し、while ブロックの最後に $f = fetch($q) を追加するのを忘れた場合、Zend はそれについて警告しません!

したがって、一般的なエラーに関する警告を削除することで、別の一般的なエラーに備えることができます。

鍋から火の中へ。