Java Char Array Create toCharArray(int number, int exactArrayLength)

Here you can find the source of toCharArray(int number, int exactArrayLength)

Description

Converts the given number into a char-array.

License

Open Source License

Parameter

Parameter Description
number The number to convert to a char array.
exactArrayLength The exact length of the returned array.

Return

The numebr as char array, one char for each decimal digit.

Declaration

public static char[] toCharArray(int number, int exactArrayLength) 

Method Source Code

//package com.java2s;
/* Copyright  (c) 2002 Graz University of Technology. All rights reserved.
 *
 * Redistribution and use in  source and binary forms, with or without 
 * modification, are permitted  provided that the following conditions are met:
 *
 * 1. Redistributions of  source code must retain the above copyright notice,
 *    this list of conditions and the following disclaimer.
 *
 * 2. Redistributions in  binary form must reproduce the above copyright notice,
 *    this list of conditions and the following disclaimer in the documentation
 *    and/or other materials provided with the distribution.
 *  /*from   ww  w .  j av a 2 s. c o  m*/
 * 3. The end-user documentation included with the redistribution, if any, must
 *    include the following acknowledgment:
 * 
 *    "This product includes software developed by IAIK of Graz University of
 *     Technology."
 * 
 *    Alternately, this acknowledgment may appear in the software itself, if 
 *    and wherever such third-party acknowledgments normally appear.
 *  
 * 4. The names "Graz University of Technology" and "IAIK of Graz University of
 *    Technology" must not be used to endorse or promote products derived from 
 *    this software without prior written permission.
 *  
 * 5. Products derived from this software may not be called 
 *    "IAIK PKCS Wrapper", nor may "IAIK" appear in their name, without prior 
 *    written permission of Graz University of Technology.
 *  
 *  THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESSED OR IMPLIED
 *  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 *  WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 *  PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE LICENSOR BE
 *  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
 *  OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
 *  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
 *  OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
 *  ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 *  OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 *  OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 *  POSSIBILITY  OF SUCH DAMAGE.
 */

public class Main {
    /**
     * Converts the given number into a char-array. If the length of the array
     * is shorter than the required exact length, the array is padded with leading
     * '0' chars. If the array is longer than the wanted length the most
     * significant digits are cut off until the array has the exact length.
     *
     * @param number The number to convert to a char array.
     * @param exactArrayLength The exact length of the returned array.
     * @return The numebr as char array, one char for each decimal digit.
     * @preconditions (exactArrayLength >= 0)
     * @postconditions (result <> null)
     *                 and (result.length == exactArrayLength)
     */
    public static char[] toCharArray(int number, int exactArrayLength) {
        char[] charArray = null;

        String numberString = Integer.toString(number);
        char[] numberChars = numberString.toCharArray();

        if (numberChars.length > exactArrayLength) {
            // cut off digits beginning at most significant digit
            charArray = new char[exactArrayLength];
            for (int i = 0; i < charArray.length; i++) {
                charArray[i] = numberChars[i];
            }
        } else if (numberChars.length < exactArrayLength) {
            // pad with '0' leading chars
            charArray = new char[exactArrayLength];
            int offset = exactArrayLength - numberChars.length;
            for (int i = 0; i < charArray.length; i++) {
                charArray[i] = (i < offset) ? '0' : numberChars[i - offset];
            }
        } else {
            charArray = numberChars;
        }

        return charArray;
    }
}

Related

  1. toCharArray(CharSequence charSequence)
  2. toCharArray(CharSequence charSequence)
  3. toCharArray(CharSequence cs)
  4. toCharArray(double[][] array)
  5. toCharArray(final byte[] array)
  6. toCharArray(String map)
  7. toCharArray(String s)
  8. toCharArray(String s)
  9. toCharArray(String s)