如何在Java中从数组中删除int值?

19 浏览
0 Comments

如何在Java中从数组中删除int值?

我尝试使用这个链接中的方法将其转换为ArrayList,然后再转回去,但是出现了很多错误。我还尝试了这个链接中的方法,但是由于某种原因它只适用于字符串,我修改了一下以适用于整数,但是不起作用。

我想要做的是将array1中的两个元素复制到array2中,然后从array1中删除这两个元素,因为我已经使用过它们了。

0
0 Comments

问题的出现的原因是想要从一个整数数组中删除特定的值。解决方法是创建一个新的数组,省略不想要的值。

在这个简单的例子中,我们想要删除一个唯一的值:

int[] array = {1, 2, 3, 4};
int[] newArray = new int[array.length - 1];
for (int i = 0, j = 0; i < array.length; i++) {
    if (array[i] != 3)
        newArray[j++] = array[i];
}

以上代码可以作为一个示例,根据实际需求进行修改。

0
0 Comments

问题的出现原因:提问者想要从一个整数数组中移除特定值,但是他遇到了以下两个问题:如何通过索引获取数组中的元素,以及如何将普通数组转换成ArrayList。

解决方法:首先,通过使用索引获取数组中的元素,然后通过调用ArrayList的remove方法从列表中移除该元素。其次,可以使用Arrays.asList方法将普通数组转换成ArrayList。

以下是解决问题的代码示例:

Integer[] array = {1, 2, 3, 4};
ArrayList list = new ArrayList(Arrays.asList(array));
int numberOne = list.get(0); // 获取索引为0的元素
list.remove(0); // 从列表中移除该元素
System.out.println(numberOne); // 输出被移除的元素

这段代码首先定义了一个整数数组array,并使用Arrays.asList方法将其转换成ArrayList。然后,通过调用ArrayList的get方法获取索引为0的元素,将其赋值给变量numberOne。接着,调用ArrayList的remove方法移除索引为0的元素。最后,使用System.out.println方法输出被移除的元素。

通过这种方法,提问者可以从数组中移除指定的整数值。

0
0 Comments

问题的出现原因:

该问题的出现可能是因为使用的Java版本不支持List.of()方法。这导致在使用integerList.removeAll(List.of(1,2))时出现错误。

解决方法:

一种解决方法是使用旧版本的Java,或者手动实现List.of()方法。另一种解决方法是使用其他方法来移除数组中的int值。

以下是使用其他方法来移除数组中的int值的示例代码:

Integer[] array = { 1,2,3,4 };
List<Integer> integerList = new ArrayList<>(Arrays.asList(array));
// 创建一个新的空列表来存储非int值
List<Integer> newList = new ArrayList<>();
// 遍历原始列表,将非int值添加到新列表中
for(Integer num : integerList){
    if(num instanceof Integer){
        newList.add(num);
    }
}
// 将新列表转换为数组
array = newList.toArray(new Integer[newList.size()]);

希望这些解决方法对您有帮助!

0