私はREPLでプレイしていましたが、この現象は>>
と>>>
です。 Longが64ビットを占有するように見えるので、64
で右にシフトすると、常に数値がゼロになるはずです。長さが0に等しくないビット右シフト?
scala> 64 >> 64
res22: Int = 64
scala> 64 >> 65
res23: Int = 32
scala> 64 >> 66
res24: Int = 16
scala> 64 >> 67
res25: Int = 8
scala> 64 >> 68
res26: Int = 4
scala> 64 >> 69
res27: Int = 2
scala> 64 >> 70
res28: Int = 1
scala> 64 >> 71
res29: Int = 0
scala> 64 >>> 64
res30: Int = 64
scala> 64 >>> 65
res31: Int = 32
Scalaではこの動作は何ですか?
あなたは 'Long'値について質問しますが、あなたの例は' Int'を使用します。あなたの質問を明確にすることはできますか? –
動作は関係なく同じですか?私はscalaを使用しています2.11.7 fwiw –
これと同じように 'scala> 64l >> 64l = 64' – prayagupd