Here you can find the source of itob(long integer, int[] arr)
Parameter | Description |
---|---|
integer | a parameter |
length | a parameter |
private static String itob(long integer, int[] arr)
//package com.java2s; /**//from w w w .j a va 2 s.c o m * Copyright 2015 Yannick Roffin * * 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. */ public class Main { /** * Converts a binary number, the number required, * and the number of bits desired output (here 26) * Store the result in the overall picture "bit2" * * @param integer * @param length * @return */ private static String itob(long integer, int[] arr) { for (int i = 0; i < arr.length; i++) { if ((integer / power2(arr.length - 1 - i)) == 1) { integer -= power2(arr.length - 1 - i); arr[i] = 1; } else arr[i] = 0; } StringBuilder sb = new StringBuilder(); int sz = 0; for (int b : arr) { if ((sz % 2) == 0) { sb.append(" "); } sb.append(b); sz++; } return sb.toString(); } /** * Calculating the number 2 ^ stated figure, used by itob function to convert decimal / binary * @param power * @return */ private static long power2(int power) { long integer = 1; for (int i = 0; i < power; i++) { integer *= 2; } return integer; } }