Java Double Number Create toDouble(final byte[] inputBytes, final int offset)

Here you can find the source of toDouble(final byte[] inputBytes, final int offset)

Description

to Double

License

Apache License

Declaration

public static final double toDouble(final byte[] inputBytes, final int offset) 

Method Source Code

//package com.java2s;
/*//w ww.j av a2  s.c om
* Copyright 2010 Bizosys Technologies Limited
*
* Licensed to the Bizosys Technologies Limited (Bizosys) under one
* or more contributor license agreements.  See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership.  The Bizosys licenses this file
* to you 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.
*/

public class Main {
    public static final double toDouble(final byte[] inputBytes, final int offset) {
        return Double.longBitsToDouble(toLong(inputBytes, offset));
    }

    /**
     * Form a Long value reading 8 bytes
     * @param offset   Bytes read start position
     * @param inputBytes   Input Bytes
     * @return   Long representation
     */
    public static final long toLong(final byte[] inputBytes, int offset) {

        if (0 == inputBytes.length)
            return 0;

        long longVal = (((long) (inputBytes[offset])) << 56) + ((inputBytes[++offset] & 0xffL) << 48)
                + ((inputBytes[++offset] & 0xffL) << 40) + ((inputBytes[++offset] & 0xffL) << 32)
                + ((inputBytes[++offset] & 0xffL) << 24) + ((inputBytes[++offset] & 0xff) << 16)
                + ((inputBytes[++offset] & 0xff) << 8) + (inputBytes[++offset] & 0xff);
        return longVal;
    }
}

Related

  1. toDouble(byte[] si, boolean isReverseOrder)
  2. toDouble(byte[] value)
  3. toDouble(final byte[] array, final int offset, final int length)
  4. toDouble(final byte[] bytes)
  5. toDouble(final byte[] bytes)
  6. toDouble(final int[] a, final int len)
  7. toDouble(final Number n)
  8. toDouble(final Object obj)
  9. toDouble(final Object obj)