Tất cả những gì tôi cần làm là chuyển đổi một mảng hai byte chưa ký thành một số nguyên. Tôi biết, tôi biết, Java không có các kiểu dữ liệu chưa ký, nhưng các số của tôi nằm trong các byte chưa ký tự giả.Java unsigned byte [2] để int?
byte[] b = {(byte)0x88, (byte)0xb8}; // aka 35000
int i = (byte)b[0] << 8 | (byte)b[1];
Vấn đề không chuyển đổi đúng, bởi vì nó cho rằng đó là byte đã ký ... Làm cách nào để chuyển đổi nó thành int?
Chuyển thành int rồi thực hiện chuyển dịch. – Apurv
Nó không thực sự trùng lặp. Câu hỏi được liên kết là khoảng 2 byte để int byte không được ký. Bạn có thể suy ra rằng bạn cũng phải che dấu byte đầu tiên từ câu trả lời đầu tiên, nhưng điều đó không rõ ràng chút nào. Tôi không hiểu cách họ có thể đánh dấu câu trả lời này là trùng lặp. Nó được kiểm tra trước khi được chấp nhận? Chúng tôi có thể báo cáo điều này không? – BaptisteL