Javaには演算子 >>> と <<< がありますが、これは >> と << とは少し異なります - 誰かが C# で同等のものを教えてくれますか?
1274 次
4 に答える
7
最も単純な (または少なくとも最も論理的な) 同等のものは、実質的に同等の符号なし型への未チェックのキャストであり、その後に通常のシフトが続き、その後再びキャストバックされる可能性があります。
// To perform int result = x >>> 5;
int x = -10;
uint u = unchecked ((uint) x);
u = u >> 5;
int result = unchecked ((int) u);
(もちろん、チェックされていない部分は、チェックされたコンテキストにいる場合にのみ関連します。)
私の経験では、通常は Java で使用>>>
したい場合、C# では署名なしの型を使用するだけです。
于 2011-07-25T12:31:52.803 に答える
2
c# に相当するものはありません。左側で符号なしの値を使用すると、c#では Java>>
と同じ機能が実行されます。>>>
したがって、目的の効果を得るにはキャストする必要があります。
于 2011-07-25T12:31:08.387 に答える
2
Javaには>>>
(<<<
演算子があるとは思わない)C#には存在しない符号なし右シフト演算子があります。Javaには署名されていないデータ型がないため、Javaにあります。C# では、>>
演算子で符号なしの型を使用するだけです。
于 2011-07-25T12:31:20.010 に答える
2
>>>
Java の符号なしシフト操作です。
C# は符号なし整数をサポートしているため、C# には同等のものはありません。したがって、それらをシフトすることができます。
于 2011-07-25T12:31:51.107 に答える