如何反转标签的一半?

时间:2017-11-18 19:55:41

标签: java

我怎么能只反转一半的桌子?例如: 我有:TAB = {1,2,3,4,5,6},我想获得TAB2:{1,2,3,6,5,4}。

现在,我像这样翻转所有标签:

int tmpl;
    int l = tab2.length;
    int pol = l/2;

    for (int i = 0; i <= pol; i++){
        tmpl = tab2[i];
        tab2[i] = tab2[l-1-i];
        tab2[l-1-i] = tmpl;
    }

1 个答案:

答案 0 :(得分:1)

为每一半制作两个独立的数组。

FROM jenkins/jenkins

有一个反转数组的方法。传递每个阵列。

public static int[] splitArray(int start, int end, int[] array)
{
    int[] newArray = new int[array.length / 2];
    int j = 0;
    for (int i = start; i < end; i++)
    {
        newArray[j] = array[i];
        j++;

    }
    return newArray;
}

现在合并两个数组。

public static int[] reverseArray(int[] array)
{
    int[] newArray = new int[array.length];
    int j = 0;
    for (int i = array.length - 1; i >= 0; i--)
    {
        newArray[j] = array[i];
        j++;
    }
    return newArray;
}

主要方法的外观。

public static int[] combineArrays(int[] array1, int[] array2)
{
    int j = 0;
    int[] combinedArray = new int[array1.length + array2.length];
    for (int i = 0; i < array1.length; i++)
    {
        combinedArray[j] = array1[i];
        j++;
    }
    for (int i = 0; i < array2.length; i++)
    {
        combinedArray[j] = array2[i];
        j++;
    }
    return combinedArray;
}