(เนื่องจากเหตุผลที่มีความยาวคำอธิบายไม่ได้มีรายละเอียดและวิทยาศาสตร์เพียงพอโปรดอย่าวิพากษ์วิจารณ์หากคุณไม่ชอบ)
ฉันมักจะเห็นคำจำกัดความที่แตกต่างกันของอาร์เรย์ไบต์ในชวาดังนั้นฉันจะแยกแยะพวกเขาออกมา:
หนึ่งไบต์ = 8 บิตและ "อาร์เรย์ไบต์" ทั้งหมดคือ "ไบต์" นั่นคือแต่ละไบต์สามารถแสดงได้ในไบนารีเลขฐานสิบหกและทศนิยม
ไบนารี: 00010110 ------> 0*2^8 + 0*2^7 + 0*2^6 + 1*2^5 + 0*2^4 + 1*2^3 + 1*2^2 + 0*2^1 + 0*2^0 = 22
Hexadecimal: 0x16 -------> 1*16^1 + 6*16^0 = 22
ทศนิยม: 22
ดังนั้นสามต่อไปนี้เทียบเท่า:
ไบต์ [] aa = {00010110, 01010010, 10111000};
ไบต์ [] aa = {0x16, 0x52, 0xb8};
ไบต์ [] aa = {22, 82, 184};
เมื่อทำการดีบักเบรกพอยต์คราสเนื้อหาของอาร์เรย์ไบต์ที่คุณเห็นจะแสดงในทศนิยม บางครั้งคุณเห็นตัวเลขติดลบเนื่องจากตัวเลขที่มากกว่า 127 ในอาร์เรย์ไบต์จะแสดงเป็นตัวเลขลบ
เรารู้ว่า Java อ่านเฉพาะอาร์เรย์ไบต์ที่สนับสนุนในขณะที่ไบต์คือ 8 บิตดังนั้นจึงต้องไม่เกิน 127 ถ้ามันเกินกว่ามันจะล้นและแสดงในรูปแบบของจำนวนลบ
บทความข้างต้นพูดสั้น ๆ เกี่ยวกับวิธีการเขียนที่แตกต่างกันของอาร์เรย์ไบต์ของ Java คือเนื้อหาทั้งหมดที่ฉันแบ่งปันกับคุณ ฉันหวังว่าคุณจะให้ข้อมูลอ้างอิงและฉันหวังว่าคุณจะสนับสนุน wulin.com มากขึ้น