タグ付けされた質問 「operators」

演算子は、データの計算と比較を実行するために、ほぼすべてのプログラミング言語とコーディング言語で使用される記号です。

6
「x in y」または「not x in y」
メンバーシップをテストする場合、以下を使用できます。 x not in y または代わりに: not x in y xとに応じて、この式には多くのコンテキストが考えられますy。たとえば、部分文字列チェック、リストメンバーシップ、dictキーの存在などが考えられます。 2つの形式は常に同等ですか? 推奨される構文はありますか?

8
「and」と「or」は非ブール値でどのように機能しますか?
私はpythonを学ぼうとしていて、素晴らしくて短いが完全に意味のないコードに出くわしました コンテキストは: def fn(*args): return len(args) and max(args)-min(args) 私はそれが何をしているのかを取得していますが、なぜpythonはこれを行うのですか-つまり、True / Falseではなく値を返しますか? 10 and 7-2 5を返します。同様に、andおよびtoを変更すると、機能が変更されます。そう 10 or 7 - 2 10を返します。 これは合法/信頼できるスタイルですか、それともこれについて何か問題がありますか?


13
!!〜(チルド/バンバンチルドではない)は、「contains / included」配列メソッド呼び出しの結果をどのように変更しますか?
ここのjQuery inArrayページのコメントを読むと、興味深い宣言があります。 !!~jQuery.inArray(elm, arr) 今、私は二重感嘆符が結果をtype booleanに、の値で変換すると信じていますtrue。私が理解していないのは~、これらすべての中でチルダ()演算子がどのように使用されているのですか? var arr = ["one", "two", "three"]; if (jQuery.inArray("one", arr) > -1) { alert("Found"); } ifステートメントのリファクタリング: if (!!~jQuery.inArray("one", arr)) { alert("Found"); } 壊す: jQuery.inArray("one", arr) // 0 ~jQuery.inArray("one", arr) // -1 (why?) !~jQuery.inArray("one", arr) // false !!~jQuery.inArray("one", arr) // true また、チルダを前に置くと結果がになることにも気付きました-2。 ~!!~jQuery.inArray("one", arr) // -2 …

6
Cのチルダ演算子
ELFハッシュアルゴリズムでチルド演算子が使用されているのを見てきましたが、その機能に興味があります。(コードはEternally Confusedからのものです。) unsigned elf_hash ( void *key, int len ) { unsigned char *p = key; unsigned h = 0, g; int i; for ( i = 0; i < len; i++ ) { h = ( h << 4 ) + p[i]; g = h & 0xf0000000L; if ( …
95 c++  c  operators 


8
JavaScript:演算子のオーバーロード
私はJavaScriptを数日間使用していて、定義したオブジェクトの演算子をオーバーロードしたいところまで来ました。 グーグルでこれを検索した後、正式にこれを行うことはできないようですが、このアクションを実行するための長い時間のかかる方法を主張している人もいます。 基本的に私はVector2クラスを作成し、次のことができるようにしたいと考えています。 var x = new Vector2(10,10); var y = new Vector2(10,10); x += y; //This does not result in x being a vector with 20,20 as its x & y values. 代わりに私はこれをしなければなりません: var x = new Vector2(10,10); var y = new Vector2(10,10); x = x.add(y); //This results in …

6
(大きい?)数の値に対するMySQLの「IN」演算子のパフォーマンス
私は最近RedisとMongoDBを試していますが、MongoDBまたはRedisのいずれかにIDの配列を格納する場合が多いようです。MySQL IN演算子について質問しているので、この質問についてはRedisを使用します。 IN演算子内に多数(300〜3000)のIDをリストすることは、どれほどパフォーマンスが高いのか疑問に思いました。これは次のようになります。 SELECT id, name, price FROM products WHERE id IN (1, 2, 3, 4, ...... 3000) 通常は一緒に結合して特定のカテゴリから製品を取得する、製品とカテゴリのテーブルのような単純なものを想像してみてください。上記の例では、Redis()の特定のカテゴリの下で、ID 4のカテゴリからすべての製品IDを返し、演算子内の上記のクエリに配置していることがわかります。category:4:product_idsSELECTIN これはどのくらいのパフォーマンスですか? これは「状況によって異なります」ですか?または、具体的な「これは(受け入れられない)」または「速い」または「遅い」LIMIT 25がありますか、それとも追加する必要がありますか、それとも役に立ちませんか? SELECT id, name, price FROM products WHERE id IN (1, 2, 3, 4, ...... 3000) LIMIT 25 または、Redisによって返される製品IDの配列をトリミングして25に制限し、クエリLIMIT内から3000ではなく25 IDのみをクエリに追加して25に追加する必要がありますか? SELECT id, name, price FROM products WHERE id …

12
ヌル合体演算子の「反対」はありますか?(…任意の言語で?)
nullの合体は、おおよそ return x, unless it is null, in which case return y 私はしばしば必要です return null if x is null, otherwise return x.y 私は使えます return x == null ? null : x.y; 悪くはありませんが、nullその真ん中はいつも私を悩ませます-それは不必要に思えます。return x :: x.y;次のようなものは、その::前にあるものが評価されない場合にのみ評価されるようなものを好みますnull。 私はこれを見るほぼ【種類簡潔との混合での、ヌル合体とは反対側、インラインヌルチェック、私はよほとんど ]特定のC#には、オペレータがないこと。 そのような演算子を持つ他の言語はありますか?もしそうなら、それは何と呼ばれていますか? (私はそのメソッドをC#で記述できることを知っています。私はを使用しreturn NullOrValue.of(x, () => x.y);ますが、もっと良いものがあれば、それも見たいと思います。)


12
コロン(:)演算子は何をしますか?
どうやら、コロンはJavaで複数の方法で使用されています。誰かがそれが何をするのか説明してもらえますか? たとえばここで: String cardString = ""; for (PlayingCard c : this.list) // <-- { cardString += c + "\n"; } をfor-each組み込まないように、このループを別の方法でどのように記述します:か?


14
C#IN演算子はありますか?
SQLでは、次の構文を使用できます。 SELECT * FROM MY_TABLE WHERE VALUE_1 IN (1, 2, 3) C#に同等のものはありますか?IDEは "in"をキーワードとして認識しているようですが、その情報を見つけることができません。 したがって、次のようなことを行うことは可能ですか? int myValue = 1; if (myValue in (1, 2, 3)) // Do something の代わりに int myValue = 1; if (myValue == 1 || myValue == 2 || myValue == 3) // Do something



弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.