不了解如何在处理3中访问CSV文件。需要解释

时间:2018-05-02 20:27:40

标签: java csv processing

我之前创建了一个名为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");
    }
}

1 个答案:

答案 0 :(得分:1)

您不应使用==来比较String值。您应该使用equals()函数:

if(pieces[3].equals("Nil")){
  println("It worked");
}

来自the reference

  

要比较两个字符串的内容,请使用equals()方法,而不是if (a.equals(b)),而不是if (a == b)StringObject,因此将它们与==运算符进行比较只会比较两个字符串是否存储在同一个内存位置。使用equals()方法将确保比较实际内容。

还要注意大括号。您发布的代码似乎缺少一个。

如果这不起作用,请尝试养成debugging your code的习惯。例如,尝试打印piecespieces[3]的值,以确切了解正在进行的操作。