我很困惑为什么以下测试集成员资格的方法在我的程序中不起作用。如果我使用任何文本文件作为参数运行以下程序,则在输出中我只会看到“第二”。我认为两个 if 语句都应该测试相同的东西。
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.util.Arrays;
public class Exc0 {
public static void main(String args[]){
try {
File input = new File(args[0]);
BufferedReader reader = new BufferedReader(new FileReader(input));
int[] delimiters = {' ', '(', ',', ')'};
int current;
while ((current = reader.read()) != -1){
if ((Arrays.asList(delimiters).contains(current))){
System.out.println("First");
}
if (current == ' ' || current == '(' || current == ',' || current == ')'){
System.out.println("Second");
}
}
}
catch (IOException e){
e.printStackTrace();
}
}
}