I无法使用IF语句来检查数组中是否有值,如果没有,则将+1添加到InvalidLine中。
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
public class Assignment {
public static void main(String[] args) throws FileNotFoundException {
Scanner scan = new Scanner(new File("../Text.txt"));
String line;
while (scan.hasNext()) {
line = scan.nextLine();
String[] elements = line.split(":");
System.out.println("The line has " + elements.length
+ " elements.");
for (int i = 0; i < elements.length; i++) {
System.out.println("Element " + (i + 1) + " was : " + elements[i]);
int InvalidLine = 0;
if (elements[i] == "");{
Invalid++; }
System.out.println("Invalid Fields " + InvalidLine);
}
}
}
}
当输出生成时,+1被添加到InvalidLine中,即使在某些情况下,1数组中没有数据
这条线有4个元素。
要素1是:
1
要素2是:饼干
1
要素3是:3
1
要素4是:4
1
这条线有4个元素。
要素1是:咖啡
1
要素2是:蛋糕
1
要素3是:3
1
要素4是:6
1
发布于 2014-10-24 15:52:48
elements[i] == ""
你不应该像这样比较String
,使用
elements[i].equals("")
或
elements[i].isEmpty() // Since Java 6
https://stackoverflow.com/questions/26551562
复制相似问题