Java 爪哇';如果';语句被忽略?

Java 爪哇';如果';语句被忽略?,java,arrays,if-statement,javafx,Java,Arrays,If Statement,Javafx,我的“如果”语句被忽略… 代码有什么问题 守则: private ObservableList<String[]> fnlData; . . for (int i = 0; i < fnlData.size(); i++){ if (fnlData.get(i)!=null || fnlData.get(i)[indexC]!=null || fnlData.get(i).length > indexC+1) { fnlData.get(i)[in

我的“如果”语句被忽略…
代码有什么问题

守则:

private ObservableList<String[]> fnlData;
.
.

for (int i = 0; i < fnlData.size(); i++){
    if (fnlData.get(i)!=null || fnlData.get(i)[indexC]!=null || fnlData.get(i).length > indexC+1) {
       fnlData.get(i)[indexC] = null;
    }
}
私有可观察列表fnlData;
.
.
对于(int i=0;iindexC+1){
fnlData.get(i)[indexC]=null;
}
}
fnlData.get(0)(=StringArray)
中只有一个元素。
在第一个循环中(当i=0时),它应该跳过“if”
不知何故,它进入并执行
fnlData.get(i)[indexC]=null
但是因为数组中没有第二个元素,所以得到了一个错误
ArrayIndexOutOfBoundsException
InvocationTargetException


如果
fnlData.get(0)=null
为真,您声称为真

如果您要求所有条件均为真,请使用和,而不是或:

if (fnlData.get(i)!=null && fnlData.get(i)[indexC]!=null && fnlData.get(i).length > indexC+1)

如果
fnlData.get(0)=null
为真,您声称为真

如果您要求所有条件均为真,请使用和,而不是或:

if (fnlData.get(i)!=null && fnlData.get(i)[indexC]!=null && fnlData.get(i).length > indexC+1)

如果
,为什么您认为它会跳过
?既然
fnlData.get(0)
不为空,它将在内部进行。如果
,为什么您认为它会跳过
?由于
fnlData.get(0)
不为空,因此它将在内部进行。啊,好的。我还必须删除:fnlData.get(I)[indexC]=空,那么它工作得很好。我还必须删除:fnlData.get(I)[indexC]=空,然后它工作了