java 嵌套在内层的if语句,不论条件是否成立,都始终只执行if(index!=0)后的语句块,问题出在哪?

2025-03-24 09:11:51
推荐回答(1个)
回答1:



import java.util.Arrays;
import java.util.Scanner;

public class Kyo
{
public static void main(String[] args)
{
int len = 10;
int[] arr = new int[len];
Scanner scan = new Scanner(System.in);
System.out.println("请输入" + len + "个整型数字:");
for(int i = 0; i < len; i++)
{
arr[i] = scan.nextInt();
}
System.out.print("请输入你要删除的数字:");
int x = scan.nextInt();
scan.close();
boolean isExisted = false;
for(int i = 0; i < arr.length; i++)
{
int a = arr[i];
if(a == x)
{
int[] dest = new int[arr.length - 1];
System.arraycopy(arr, 0, dest, 0, i);
System.arraycopy(arr, i + 1, dest, i, arr.length - 1 - i);
arr = dest;
isExisted = true;
break;
}
}
System.out.println("剩余的数字有:" + Arrays.toString(arr));
if(isExisted)
{
int min = Integer.MAX_VALUE;
for(int i = 0; i < arr.length; i++)
{
int ai = arr[i];
min = ai < min ? ai : min;
}
System.out.println("删除指定数字" + x + "后,最小值是:" + min);
}
else
{
System.out.println("不存在");
}
}
}