Here you can find the source of getUnsignedShort(ByteBuffer bb)
public static final int getUnsignedShort(ByteBuffer bb)
//package com.java2s; /*/* w w w . j a v a2 s. com*/ * Copyright 2015 bladesilent@gmail.com * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * */ import java.nio.ByteBuffer; public class Main { /** * Get a unsigned short from byte buffer an put the value in a int * * @param buf * @param off * @return */ public static final int getUnsignedShort(byte[] buf, int off) { if (buf.length - off >= 2) { return ((0x0FF & buf[off]) << 8) + (0x0FF & buf[off + 1]); } else { throw new IndexOutOfBoundsException(); } } public static final int getUnsignedShort(byte[] buf) { return getUnsignedShort(buf, 0); } public static final int getUnsignedShort(ByteBuffer bb) { if (bb.remaining() >= 2) { return ((0x0FF & bb.get()) << 8) + (0x0FF & bb.get()); } else { throw new IndexOutOfBoundsException(); } } }