Pengendali anjakan bit Java ialah pengendali yang beroperasi pada nombor perduaan Mereka mengalihkan bit nombor perduaan ke kiri atau kanan dengan bilangan bit yang ditentukan, dan kemudian mengisi bit sifar atau bit tanda. Terdapat tiga operator anjakan bit: operator anjakan kiri (<<), operator anjakan kanan (>>), dan operator anjakan kanan yang tidak ditandatangani (>>>).
Operator anjakan bit di Java ialah pengendali yang beroperasi pada nombor binari Mereka mengalihkan bit nombor binari ke kiri atau kanan dengan bilangan bit yang ditentukan dan kemudian mengisi bit sifar atau bit tanda. Terdapat tiga operator anjakan bit dalam Java: operator anjakan kiri (<<), operator anjakan kanan (>>) dan operator anjakan kanan yang tidak ditandatangani (>>>). Berikut menerangkan penggunaan dan ciri ketiga-tiga operator ini secara terperinci.
1. Operator anjakan kiri (<<)
Operator anjakan kiri mengalihkan nombor perduaan ke kiri mengikut bilangan digit yang ditentukan, dan kemudian mengisi sifar bit di sebelah kanan. Sebagai contoh, mengalihkan nombor perduaan 1010 ke kiri sebanyak 2 bit menghasilkan 00101000 (40 dalam perpuluhan). Sintaks operator anjakan kiri adalah seperti berikut:
int result = value << num;
di mana nilai ialah nombor perduaan yang hendak dialihkan, num ialah bilangan digit yang hendak dialihkan, dan hasilnya ialah hasil operasi.
2. Operator anjakan kanan (>>)
Operator anjakan kanan mengalihkan nombor perduaan ke kanan mengikut bilangan digit yang ditentukan, dan kemudian mengisi bit tanda di sebelah kiri. Jika nombor asal adalah positif, ia berlapik dengan sifar bit di sebelah kiri; Sebagai contoh, mengalihkan nombor perduaan 1010 ke kanan sebanyak 2 bit menghasilkan 00001010 (nombor perpuluhan 2). Sintaks operator anjakan kanan adalah seperti berikut:
int result = value >> num;
di mana nilai ialah nombor perduaan yang hendak dialihkan, num ialah bilangan digit yang hendak dialihkan, dan hasilnya ialah hasil operasi.
3. Operator anjakan kanan yang tidak ditandatangani (>>>)
Operator anjakan kanan yang tidak ditandatangani mengalihkan nombor perduaan ke kanan mengikut bilangan bit yang ditentukan, dan kemudian meletakkan sifar bit di sebelah kiri. Operator anjakan kanan yang tidak ditandatangani tidak menganggap bit tanda dan pad sifar bit di sebelah kiri tidak kira sama ada nombor asal adalah positif atau negatif. Sebagai contoh, anjakan kanan yang tidak ditandatangani bagi nombor perduaan 1010 sebanyak 2 bit menghasilkan 00001010 (nombor perpuluhan 2). Sintaks operator anjakan kanan yang tidak ditandatangani adalah seperti berikut:
int result = value >>> num;
di mana nilai ialah nombor perduaan yang hendak dialihkan, num ialah bilangan digit yang hendak dialihkan, dan hasilnya ialah hasil operasi.
Perlu diingatkan bahawa operator anjakan hanya boleh digunakan untuk jenis integer, bukan jenis titik terapung. Di samping itu, bilangan bit yang hendak dialihkan mestilah integer bukan negatif, jika tidak pengecualian akan dilemparkan. Apabila menggunakan pengendali bitwise, perhatian khusus harus diberikan kepada cara bit tanda dan bit sifar diisi untuk mengelakkan hasil operasi yang tidak dijangka.
Atas ialah kandungan terperinci Pengenalan terperinci kepada operator java bit shift. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!