Cách tìm bitwise và hai số trong Java
Về cơ bản, chúng tôi đang kiểm tra xem số & (số - 1) có bằng 0 không thì số đó là lũy thừa của hai. Chúng tôi đang thực hiện hai thao tác trong mã này, thao tác đầu tiên là phép trừ nhị phân và thao tác thứ hai là thao tác AND theo bit Show
Trước tiên chúng ta hãy xem toán tử AND hoạt động như thế nào. Như tên gợi ý, nó thực hiện thao tác AND trên từng bit đơn lẻ của cả hai toán hạng, theo bit, AND sẽ chỉ trả về 0 nếu cả hai toán hạng không có bit được đặt (1) tại cùng một vị trí. Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách thực hiện các thao tác bitwise bằng cách lấy đầu vào từ người dùng. Toán tử bitwise là toán tử được sử dụng để thao tác các bit riêng lẻ của một số. Chúng được sử dụng nhiều trong khi thực hiện các thao tác cập nhật và truy vấn trên cây được lập chỉ mục nhị phân. Nó được áp dụng cho các kiểu số nguyên, long, int, short, char và byte. Nhưng trước khi tiếp tục, nếu bạn chưa quen với khái niệm toán tử bitwise trong java, thì hãy xem bài viết về Toán tử trong Java Đầu vào. ( 5 & 4 ) ( 5. 4 ) ( 5^4 ) ( 5 << 4 ) ( 5 >> 4 ) đầu ra 4 5 1 80 0 Hai trường hợp phát sinh cho vấn đề trên Trường hợp 1. Khi các giá trị do người dùng xác định trường hợp 2. Khi các giá trị được xác định trước Chúng ta hãy xem xét từng trường hợp này một cách riêng biệt chương trình 1. Để thực hiện hoạt động BitwiseTrong chương trình này, chúng ta sẽ xem cách thực hiện các thao tác theo bit trong java khi các giá trị do người dùng xác định. Ở đây, đầu tiên chúng tôi sẽ yêu cầu người dùng nhập các giá trị, sau đó chúng tôi sẽ thực hiện các thao tác theo bit thuật toán
Chúng ta hãy xem ví dụ dưới đây để hiểu rõ hơn
chương trình 2. Để thực hiện hoạt động BitwiseTrong chương trình này, chúng tôi sẽ thực hiện các hoạt động bitwise khi các giá trị được xác định trước trong chương trình Làm thế nào để tính toán bitwise hoặc trong Java?Loại trừ bit HOẶC (^) . lớp công khai BitwiseXorExample public static void main(String[] args) int x = 9, y = 8; // XOR từng bit // 1001^1000 = 0001 = 1 Hệ thống. ngoài. println("x^y = " + (x^y)); Đây là gì >>> Toán tử Bitwise trong Java?Toán tử bitwise trong Java là ký hiệu/ký hiệu thực hiện một thao tác được chỉ định trên các bit độc lập, được thực hiện từng bit một . Nó được sử dụng để thao tác các bit riêng lẻ của một số nhị phân và có thể được sử dụng với nhiều loại số nguyên – char, int, long, short, byte.
Làm cách nào để hoán đổi hai số trong Java bằng Toán tử Bitwise?Sử dụng toán tử Bitwise . Tìm tương đương nhị phân của các biến đã cho, giả sử X và Y Tìm X^Y và lưu trữ nó trong x, i. e. X = X ^ Y Một lần nữa, tìm X^Y và lưu trữ nó trong Y, tôi. e. Y = X ^ Y Tìm X^Y và lưu trữ nó trong X, i. e. X = X ^ Y Các số được hoán đổi Đầu ra của phép toán bitwise và (&) là gì nếu cả hai toán hạng đầu vào đều là 1?Toán tử AND theo bit được biểu thị bằng một dấu và (&). Hai toán hạng số nguyên được viết trên cả hai vế của toán tử (&). Nếu các bit tương ứng của cả hai toán hạng là 1, thì đầu ra của phép toán AND theo bit là 1 ; . |