如何检查数组中的位置是否为空

时间:2018-03-17 13:32:24

标签: java arrays

我想检查测试数组位置是否为空, 我有这段代码:

Scanner in = new Scanner(System.in);

String[] test = new String[3];
test=in.nextLine().split(" ");
    if(test[0].equalsIgnoreCase("asd")&&test[1].equals("")){
        System.out.println("Enter");
    }

但是它说测试[1]超出了这个阵列的范围。

1 个答案:

答案 0 :(得分:2)

你不应该在一行上声明你的数组,只是抛弃那个引用并在下一行获得一个新数组。第一步,改变

String[] test = new String[3];
test=in.nextLine().split(" ");

// \\s+ instead of " " consumes extra whitespaces
String[] test = in.nextLine().split(" ");

这是等效的,但不会丢弃额外的数组。接下来,您需要检查您的split是否实际产生了您期望的值。你可以使用String.isEmpty()。喜欢,

String[] test = "asd  b".split(" ");
if (test.length > 1 && test[0].equalsIgnoreCase("asd") && test[1].isEmpty()) {
    System.out.println("Enter");
}

哪个输出

Enter