int x = 1 << 25;
Was bedeutet "< <"? Unsicher, was das tut, meine Idee gibt mir keine Fehler obwohl .. Ich habe versucht, auf Foren und googeln, aber konnte keine Lösung finden. Irgendwelche Ideen?Java was bedeutet "<<"?
int x = 1 << 25;
Was bedeutet "< <"? Unsicher, was das tut, meine Idee gibt mir keine Fehler obwohl .. Ich habe versucht, auf Foren und googeln, aber konnte keine Lösung finden. Irgendwelche Ideen?Java was bedeutet "<<"?
Es ist eine Verschiebung nach links (Bit). JLS-15.19. Shift operators sagt (teilweise)
Der Betreiber
<<
(Linksverschiebung),>>
(unterzeichnet Verschiebung nach rechts), und>>>
(unsigned Verschiebung nach rechts) sind die Shift-Operatoren genannt. Der linke Operand eines Schichtoperators ist der Wert, der verschoben werden soll; Der rechte Operand gibt den Verschiebungsabstand an.
Für ein einfaches Beispiel betrachten
System.out.println(Integer.toBinaryString(1));
System.out.println(Integer.toBinaryString(1 << 1));
System.out.println(Integer.toBinaryString(1 << 2));
Welche
1
10
100
gibt, da es das einzige 1
Bit links einmal und zweimal jeweils verschiebt.
In Ihrem Beispiel int x = 1 << 25;
dass ein 1
von 25 0
s (binär oder 33554432
in dezimal) gefolgt ist.
[Java Bitshift-Operationen] (https://docs.oracle.com/javase/tutorial/java/nutsandbolts/op3.html) –
Auch für zukünftige Referenz können Sie SymbolHound (eine Suchmaschine) verwenden, mit der Sie suchen können ohne Abstreifsymbole. Zum Beispiel [dies] (http://symbolhound.com/?q=%3C%3C+java) wäre Ihre Suche/Ergebnisse für diese spezielle Frage –