【发布时间】:2014-01-19 00:33:46
【问题描述】:
我看到了下面的代码,但我不知道它是什么意思。
public class FileListAdapter extends BaseAdapter {
private Context mContext;
private LayoutInflater mInflater ;
private ArrayList<FileNode> mFileList ;
private Map<Integer, Boolean> mSelectMap = new HashMap<Integer, Boolean>();
.
.
.
@Override
public int getCount() {
return mFileList == null ? 0 : mFileList.size() ;
}
@Override
public Object getItem(int position) {
return mFileList == null ? null : mFileList.get(position) ;
}
}
第一个问题
mFileList == null ? 0 : mFileList.size(); 和 mFileList == null ? null : mFileList.get(position); 是什么意思??
第二个问题
如果我想将上面的代码从 type object 修改为 int ,怎么办?
来自
@Override
public Object getItem(int position) {
return mFileList == null ? null : mFileList.get(position) ;
}
到
@Override
public Integer getItem(int position) {
return ???
//what should I return for?
}
有人可以帮我回答这两个问题吗?
谢谢你。
【问题讨论】:
-
这是 if else 语句。如果
mFileList == null则返回null否则返回mFileList.get(position) -
android 不是编程语言。关键字 null 是一个 Java 关键字,不争论,我认为在学习 android 编程之前应该先学习 Java。
标签: java android arraylist baseadapter