Shifts 4 signed bytes into a 32 bit integer in network order (big endian). - Android java.lang

Android examples for java.lang:Math

Description

Shifts 4 signed bytes into a 32 bit integer in network order (big endian).

Demo Code

/*/*from   w w  w .  j a  v  a2s .co  m*/
 * CDDL HEADER START
 *
 * The contents of this file are subject to the terms of the Common Development
 * and Distribution License (the "License").
 * You may not use this file except in compliance with the License.
 *
 * You can obtain a copy of the license at
 * src/com/vodafone360/people/VODAFONE.LICENSE.txt or
 * http://github.com/360/360-Engine-for-Android
 * See the License for the specific language governing permissions and
 * limitations under the License.
 *
 * When distributing Covered Code, include this CDDL HEADER in each file and
 * include the License file at src/com/vodafone360/people/VODAFONE.LICENSE.txt.
 * If applicable, add the following below this CDDL HEADER, with the fields
 * enclosed by brackets "[]" replaced with your own identifying information:
 * Portions Copyright [yyyy] [name of copyright owner]
 *
 * CDDL HEADER END
 *
 * Copyright 2010 Vodafone Sales & Services Ltd.  All rights reserved.
 * Use is subject to license terms.
 */
//package com.java2s;

public class Main {
    /**
     * 
     * Shifts 4 signed bytes into a 32 bit integer in network order (big endian).
     * 
     * @param b1 The first byte that will be shifted by 24 bits.
     * @param b2 The second byte that will be shifted by 16 bits.
     * @param b3 The third byte that will be shifted by 8 bits.
     * @param b4 The fourth byte that will remain at its position.
     * 
     * @return An integer containing the 4 bytes shifted in network order.
     * 
     */
    public static int convertBytesToInt(final byte b1, final byte b2,
            final byte b3, final byte b4) {
        int i = 0;
        i += b1 & 0xFF << 24;
        i += b2 & 0xFF << 16;
        i += b3 & 0xFF << 8;
        i += b4 & 0xFF << 0;

        return i;
    }
}

Related Tutorials