রূপান্তর সম্পাদনের জন্য প্যাকেজের Bufferঅংশ হিসাবে সরবরাহ করা একটি ব্যবহার করতে পারে java.nio।
এখানে, উত্স byte[]অ্যারের দৈর্ঘ্য 8 রয়েছে, যা আকারের সাথে longমানের সাথে মিলিত হয়।
প্রথমে byte[]অ্যারেটি একটিতে আবৃত হয় ByteBufferএবং তারপরে মানটি ByteBuffer.getLongঅর্জনের জন্য পদ্ধতিটি বলা longহয়:
ByteBuffer bb = ByteBuffer.wrap(new byte[] {0, 0, 0, 0, 0, 0, 0, 4});
long l = bb.getLong();
System.out.println(l);
ফলাফল
4
ByteBuffer.getLongমন্তব্যে পদ্ধতিটি নির্দেশ করার জন্য আমি ডিএফএকে ধন্যবাদ জানাতে চাই ।
যদিও এই পরিস্থিতিতে এটি প্রযোজ্য নাও হতে পারে তবে এর সৌন্দর্য Bufferএকাধিক মান সহ একটি অ্যারে দেখে আসে।
উদাহরণস্বরূপ, যদি আমাদের কাছে 8 বাইট অ্যারে থাকে এবং আমরা এটি দুটি intমান হিসাবে দেখতে চাই , আমরা byte[]অ্যারেটিকে একটিতে আবৃত করতে পারি ByteBuffer, যা একটি হিসাবে দেখা হয় IntBufferএবং এর দ্বারা মানগুলি পাওয়া যায় IntBuffer.get:
ByteBuffer bb = ByteBuffer.wrap(new byte[] {0, 0, 0, 1, 0, 0, 0, 4});
IntBuffer ib = bb.asIntBuffer();
int i0 = ib.get(0);
int i1 = ib.get(1);
System.out.println(i0);
System.out.println(i1);
ফলাফল:
1
4