比较字符串值和布尔值

时间:2018-11-27 15:36:30

标签: java multidimensional-array

我正在尝试将布尔值(所有值均为0)与此字符串数组data[] = "1,0,0,0,0,0,0,0,0,0,0,0,1"的值进行比较。这是我的代码:

recipeIngrediants = new boolean[numberOfCuisines][numberOfIngrediants];
        int i = 0;
        while(file.hasNextLine()){
            String temp = file.nextLine();
            String[] data = temp.split(",");
        for(int j=0; j < recipeIngrediants.length; j++){
            String c = data[j];
            if(c == "1"){
                recipeIngrediants[i][j] = true;
            }
            else{
                recipeIngrediants[i][j] = false;
            }
        }
        i++;
     }

我收到一条错误消息,说它是类型不匹配。 编辑:修复了类型不匹配错误,但对于布尔值中的所有值仍然给我一个false值

问题:

我还能如何比较这些值以使recipeIngrediants上具有true的任意位置的data的二维数组等于1

1 个答案:

答案 0 :(得分:0)

我认为您希望为每个字符串true分配给数组项c,否则将得出"1"false,否则:

recipeIngrediants = new boolean[numberOfCuisines][numberOfIngrediants];
int i = 0;
while(file.hasNextLine()){
    String temp = file.nextLine();
    String[] data = temp.split(",");
    for(int j=0; j < recipeIngrediants.length; j++){
        String c = data[j];
        recipeIngrediants[i][j] = (c != null) && (c.equals("1"));
    }
    i++;
}