Solía usar el operador >> para cambiar a la derecha. Ahora lo acabo de reemplazar con >>> y encontré el mismo resultado. Entonces no puedo entender si estos dos son fundamentalmente iguales o no.¿Cuál es la diferencia entre operator >> y operator >>> en java?
5
A
Respuesta
6
El primer signo del operador: amplía el valor, cambiando en una copia del bit de signo; el segundo siempre cambia en un cero.
La razón para esto es emular enteros sin signo con el fin de realizar operaciones de bits, compensando parcialmente la falta de tipos integrales sin signo en Java.
11
>>
es aritmética (firmado) a la derecha, >>>
es lógico (sin signo) a la derecha, como se describe en el Java tutorial. Pruébalos con un valor negativo, y verás una diferencia.
3
This explains it really well. En esa misma página también hay un breve example.
Pero para un verdadero breve resumen:
<< signed left shift - shifts a bit pattern to the left
0 0 1 1 1 => 0 1 1 1 0
>> signed right shift - shifts a bit pattern to the right
0 0 1 1 1 => 0 0 0 1 1
>>> unsigned right shift - shifts a zero into the leftmost position
1 1 1 0 => 0 0 1 1
~ unary bitwise complement operator
A | Result
0 | 1
1 | 0
0 | 1
1 | 0
& bitwise and
A | B | Result
0 | 0 | 0
1 | 0 | 0
0 | 1 | 0
1 | 1 | 1
^ xor
A | B | Result
0 | 0 | 0
1 | 0 | 1
0 | 1 | 1
1 | 1 | 0
| inclusive or
A | B | Result
0 | 0 | 0
1 | 0 | 1
0 | 1 | 1
1 | 1 | 1
Cuestiones relacionadas
- 1. Diferencia entre los operadores >>> y >>
- 2. ¿Cuál es la diferencia entre ">" y "&>" en bash?
- 3. ¿Cuál es la diferencia entre `>>> some_object` y` >>> print some_object` en el intérprete de Python?
- 4. ¿Cuál es la diferencia entre redirigir una salida usando ">", "&>", "> &" y "2 &>"?
- 5. ¿Cuál es la diferencia entre <% %> y <%=%>?
- 6. ¿Cuál es la diferencia entre <%# %> y <%= %>?
- 7. ¿Cuál es la diferencia entre> = y =>?
- 8. diferencia entre <%! %> y <% %>
- 9. ¿Qué significa >> y >>> en Java?
- 10. ¿Alguna vez el rendimiento es diferente entre Java >> y >>> operadores de desplazamiento a la derecha?
- 11. ¿Cuál es la diferencia entre clone y mkdir-> cd-> init-> remote-add-> pull?
- 12. cuál es la diferencia entre el 2> 1>/dev/null y 2> & 1>/dev/null
- 13. ¿Cuál es la diferencia entre <?> y <? extiende Object> en Java Generics?
- 14. >>> ¿Cuál es la operación en C++
- 15. Java: ¿Cuál es la diferencia entre <init> y <clinit>?
- 16. ¿Diferencia entre <asp:table> y <table>?
- 17. Diferencia entre <acronym> y <abbr>?
- 18. ¿cuál es la diferencia entre la lista <> y el diccionario <> en C#
- 19. ¿Cuál es la diferencia entre ~> y> = al especificar rubygem en Gemfile?
- 20. ¿Cuál es la diferencia entre <pubDate> y <lastBuildDate> en RSS?
- 21. ¿Cuál es la diferencia entre ReadOnlyCollection <T> y ReadOnlyCollectionBuilder <T> en .Net?
- 22. ¿Cuál es la diferencia entre <% %> y <%= %> en ASP.NET MVC
- 23. ¿Cuál es la diferencia entre <% # Bind ("")%> y <% # Eval ("")%> en ASP.NET?
- 24. ¿Cuál es la diferencia entre <C-C> y <C-[> en vim?
- 25. Cuál es la diferencia entre <% ... %> y <%! ... %> en jsp
- 26. ¿cuál es la diferencia entre model-> alias y model-> name en CakePHP?
- 27. SortedList <>, SortedDictionary <> y Dictionary <>
- 28. cuál es la diferencia entre '! =' Y '<>' en MySQL
- 29. Diferencia entre <string> y <string.h>?
- 30. ¿Cuál es la diferencia entre <jsp: incluir página = ...> y <% @ incluir archivo = ...>?