我之前创建了一个名为titanicLinearisedDataSet.csv的textedit的CSV文件。我的目标是使用处理3访问此文件,并检查列中的元素是否等于字符串值" Nil"。我没有收到结果,而csv文件包含" Nil" s。
我联合了CSV文件的图像 (CSV_file_image.jpg)
感谢您的帮助!
String [][] array;
void setup() {
String [] lines = loadStrings("titanicLinearisedDataSet.csv");
array = new String[lines.length][3];
int i = 0;
for(String line: lines){
String [] pieces = split(line,",");
if(pieces[3] == "Nil"){
println("It worked");
}
}
答案 0 :(得分:1)
您不应使用==
来比较String
值。您应该使用equals()
函数:
if(pieces[3].equals("Nil")){
println("It worked");
}
要比较两个字符串的内容,请使用
equals()
方法,而不是if (a.equals(b))
,而不是if (a == b)
。String
是Object
,因此将它们与==
运算符进行比较只会比较两个字符串是否存储在同一个内存位置。使用equals()
方法将确保比较实际内容。
还要注意大括号。您发布的代码似乎缺少一个。
如果这不起作用,请尝试养成debugging your code的习惯。例如,尝试打印pieces
和pieces[3]
的值,以确切了解正在进行的操作。