我正在编写一个Java小类,我想知道这里到底发生了什么:
public void listFile(int index)
{
if(validIndex(index)) {
String filename = files.get(index);
System.out.println(filename);
}
}
但是,我写道:
public void listFile(int index)
{
if files.validIndex(index){
String filename = files.get(index);
System.out.println(filename);
}
else {
System.out.println("malo");
}
}
因此,几乎不相等,除非:
我写了-
if files.validIndex(index){
-该示例显示-
if validIndex(index){
-为什么它不显示“文件”?
为什么对象不调用该方法,而是直接将该方法放在那里。好像胡说八道
最佳答案
我假设files
是一个ArrayList(基于标题)。
ArrayList没有validIndex
方法,因此if (files.validIndex(index))
不起作用。
另一方面,代码所在的类(您未在其中包含很多)可能包含一个validIndex
方法,该方法检查传递的索引在files
列表中是否为有效索引。
因此,与if (validIndex(index))
相同的if (this.validIndex(index))
起作用。