public static int removeElement(int[] array,int size,Scanner in)throws IOException
{
System.out.println("Enter the number to remove");
int removeElement = in.nextInt();
boolean found = false;
int index = 0;
for(int i=0; i<size && !found; ++i)
{
if(array[i] == removeElement)
found = true;
++index;
}
array.splice(index,1);
我在array.splice(index,1);
上出现了错误
无法在数组类型int []
上调用splice(int,int)
答案 0 :(得分:0)
你可以这样做:
System.out.println("Enter the number to remove");
int removeElement = in.nextInt();
List<Integer> list = new ArrayList<Integer>(array.length);
for (int number : array) {
if (number != removeElement) {
list.add(number);
}
}
array = new int[list.size()];
for (int i = 0; i < list.size(); i++) {
array[i] = list.get(i);
}
请注意,array
中所做的更改(例如,分配新的数组实例)是&#34;可见&#34;仅在removeElement
方法范围内。我建议你使用ArrayList参数而不是整数数组,这样就可以list.remove(removeElement)
。