删除数组元素 功能描述:
有一个有序整数数组,要求输入一个数字,在数组中查找是否有这个数,
如果有,将该数从数组中删除,要求删除后的数组仍然保持有序;
如果没有,则显示“数组中没有这个数!”
分析:
1.首先先定义一个数组
2.用scanner的方法得到一个数字
3.先用循环遍历每个数组的元素
4.看输入的数字是否和数组的元素相同
5.可以利用位数关系来删除数组(注意不要下标越界)
代码如下:
public class excercise5 {
public static void main(String[] args) {
int a[] = { 1, 4, 6, 9, 13, 16, 19, 28, 40, 100 };
int number, i, j;
System.out.println("原始数组为:");
for (i = 0; i < a.length; i++) {
System.out.print(a[i] + "\t");
}
System.out.println("\n");
Scanner input = new Scanner(System.in);
System.out.print("输入一个数字:");
number = input.nextInt();
for (i = 0; i < a.length; i++) {
if (a[i] == number) {
break;
}
}
if (i < a.length) {
for (j = i; j < a.length - 1; j++) {
a[j] = a[j + 1];
}
System.out.println("删除后的数组为:");
for (i = 0; i < a.length - 1; i++) {
System.out.print(a[i] + "\t");
}
System.out.println("\n");
} else {
System.out.println("数组中没有这个数!");
}
}
}
总结:
我们必须要知道数组中的元素被删除并没有改变数组的长度,千万注意不要下标越界的问题
不用方法就可以使用判断位数的问题,正好一个个的排列,顺序也有了。