[英]iterating through a List<String[]>
看下面的代码:
/* Implementation to populate List<String[]> schedule */
public List<String[]> getSchedBySIN(String sin) {
List<String[]> listBySin = null;
for (String[] temp : schedule) {
if(temp[0].equals(sin)) listBySin.add(temp);
}
return listBySin;
}
listBySin
...listBySin.add(temp);
用黄色下划线,Eclipse告诉我: 空指针访问:变量listBySin仅在此位置可以为null
这是为什么? 我想做的是如果它们的第一个元素等于sin
,则使用schedule
字符串数组填充listBySin
。
您需要将一个List
对象分配给var。
List<String[]> listBySin = new ArrayList<String[]>();
您必须实例化列表。
List<String[]> listBySin = new ArrayList<String[]>();
初始化/分配您的列表,而不是
List<String[]> listBySin = null;
使用以下内容初始化您的列表
List<String[]> listBySin = new ArrayList<String[]>();
您需要先创建对象,然后才能对其调用方法。 就像是
listBySin = new ArrayList<String[]>();
进入循环之前
You must initialize
根据You must initialize
List
。 您可以使用ArrayList或Vector或Stack或CopyOnWriteArrayList进行初始化。
List<String[]> str=new ArrayList<String[]>();
List<String[]> str=new LinkedList<String[]>();
List<String[]> str=new Stack<String[]>();
List<String[]> str=new Vector<String[]>();
List<String[]> str=new CopyOnWriteArrayList<String[]>();
这完全取决于您的需要。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.