I am new in java and witing a programm to delete an element with specific position. I know there are many possible answer but i am trying here my own. I am getting the error :
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 9
at
Array.DeleteElement.delete(DeleteElement.java:24)
at
Array.DeleteElement.main(DeleteElement.java:14)
Now Here I am passing array and position. Where it is getting incorrect index. As per documentaion it is saying array has been accessed with an illegal index. Can anybody please explain me how it is illegal and where I am getting wrong.
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
//int[] delArray = new int[15];
int[] delArray = {20,50,60,9,8,7,1,5,3};
System.out.println("Enter Element you want to delete");
int del = in.nextInt();
int pos = InsertSearch.searchKey(delArray,del);
System.out.println(pos);
if(pos != -1){
delete(delArray,del,pos);
for(int i=0; i<delArray.length; i++)
System.out.println(delArray[i]);
}
else
System.out.println(del+"Not exist in array");
}
public static int delete(int delArr[], int del, int pos){
for(int i=pos; i<delArr.length; i++)
delArr[i] = delArr[i+1];
return delArr.length -1;
}