expand array by size - Android java.lang

Android examples for java.lang:array resize

Description

expand array by size

Demo Code

/**/*  w  w w .j a  v  a  2 s .co  m*/
 * 
 * Copyright 2008 - 2009
 * 
 * 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.
 * 
 * @project loonframework
 * @author chenpeng
 * @email?ceponline@yahoo.com.cn
 * @version 0.1.1
 */
//package com.java2s;
import java.lang.reflect.Array;

public class Main {

    public static Object expand(Object obj, int i, boolean flag) {
        int j = Array.getLength(obj);
        Object obj1 = Array.newInstance(obj.getClass().getComponentType(),
                j + i);
        System.arraycopy(obj, 0, obj1, flag ? 0 : i, j);
        return obj1;
    }

    public static Object expand(Object obj, int size) {
        return expand(obj, size, true);
    }

    public static Object expand(Object obj, int size, boolean flag,
            Class<?> class1) {
        if (obj == null) {
            return Array.newInstance(class1, 1);
        } else {
            return expand(obj, size, flag);
        }
    }
}

Related Tutorials