-4

我的问题是,给定两个数字,如何去掉任何数组中这些数字之间的数组扇区。

例如,给定这些数组:{3,2,5,4,8,7,9}, {1,3,2,7,8,4} 哪个方法会去掉两个数组中 2 到 8 之间的所有数字数组?

非常感谢。

4

2 回答 2

2

您可以尝试以下方法:

int[] array1 = {3,2,5,4,8,7,9};
int[] array2 = {1,3,2,7,8,4};
ArrayList newArray1 = new ArrayList();

for (int i = 0; i < array1.size(); i++)
{
    if (array1[i] > 2 && array1[i] < 8)
    {
        newArray1.add(array1[i]);
    }
}

您可以对另一个数组执行相同的操作。另外,您可以将数字添加回整数数组,因为您现在知道整数数组的大小。

int[] array1new = new int[newArray1.size()];
for (int j = 0; j < newArray1.size(); j++)
{
    array1new[j] = newArray1.get(j);
}
于 2013-02-04T10:34:01.780 回答
0

Java API 中没有内置方法。您将不得不编写一个或找到一个从原始库中提取子数组的第三方库。

您找到第一个值的索引,然后找到第二个值的索引,然后您可以使用Arrays.copyOfRange(array, from to);

于 2013-02-04T10:29:41.830 回答