如何检查数组索引是否为空,如果是,请检查下一个?

任何人都知道如何检查数组索引(不只是一个索引)是否为空,如果为空或零,则将值放在那里。 并且如果所有索引都不为空,则打印错误。

抱歉,我不能给代表。

import java.util.Scanner; public class Myhash { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub int [] myData = new int[17]; int [] newData = new int [17]; System.out.println("Please enter 16 integer numbers"); for(int i= 0; i<myData.length; i++){ //System.out.print("Please enter 16 numbers"); Scanner input = new Scanner(System.in); int data =input.nextInt(); myData[i]=data; int num3 = data % 17; newData[num3]=data; } System.out.println("These are the numbers you entered\n"); System.out.printf("%s%8s \n", "Index", "Value"); for(int t=0; t<myData.length; t++){ System.out.printf("%5d%8d\n", t, myData[t]); } System.out.println("\n"); System.out.println("The Hash Function:\n\n"); System.out.printf("%5s%8s \n", "Index", "Value"); for(int s=0; s<newData.length; s++){ System.out.printf("%5d%8d\n", s, newData[s]); } } } 

在这:

  for(int s=0; s<newData.length; s++){ System.out.printf("%5d%8d\n", s, newData[s]); } 

如何检查多个索引(如果为空?如果索引为空,如何检查下一个索引,如果该索引不为空,如何检查下一个索引等?

原始数组中的元素不能为空。 他们总是被初始化为某种东西

如果你这样声明数组

  int [] newData = new int [17]; 

那么所有元素都将默认为零。

要检查是否未输入元素,可以使用简单的循环:

  for(int i=0;i 

虽然,上述代码在您的情况下不起作用,因为用户可能输入0作为输入值,但此代码仍将其视为空。

你可以做的是,用所有值初始化数组为-1,并在输入提示符处指定只能输入值> = 0。 初始化可以像这样完成:

 int[] newData = new int[17]; for(int i=0;i 

然后,您可以要求用户输入并进行处理。 然后你可以使用这个:

 for(int i=0;i 

这里:

 for(int i = 0; i < array.length; i++) { if(array[i] == null) continue; }