Java examples for java.math:BigInteger
convert Unsigned Long to BigInteger
/**// w w w .ja v a2 s.co m * Copyright (c) 2013, Will Szumski * * This file is part of formicidae. * * formicidae is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * formicidae is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with formicidae. If not, see <http://www.gnu.org/licenses/>. */ //package com.java2s; import java.math.BigInteger; import java.nio.ByteBuffer; public class Main { public static void main(String[] argv) throws Exception { long value = 2; System.out.println(convertUnsignedLong(value)); } public static int NUMBER_OF_BYTES_LONG = Long.SIZE / Byte.SIZE; public static BigInteger convertUnsignedLong(long value) { if (value >= 0) { return convertLong(value); } return new BigInteger(ByteBuffer.allocate(NUMBER_OF_BYTES_LONG + 1) .putLong(1, value).array()); } public static BigInteger convertLong(long value) { return new BigInteger(ByteBuffer.allocate(NUMBER_OF_BYTES_LONG) .putLong(value).array()); } }