Tại sao khi tôi cố gắng dịch chuyển bit cho 11010100 2 , kết quả là 110101000 2 chứ không phải 10101000 2 .
int a = Integer.parseInt("11010100", 2) << 1;
Tôi cố gắng làm điều này:
int a = (byte)(Integer.parseInt("11010100", 2) << 1);
Nhưng nếu giá trị đầu ra lớn hơn 128, mọi thứ sẽ đi vào âm, điều này hợp lý. Làm thế nào tôi có thể làm cho số bit đó không thay đổi?
int
s hoặclong
s.