Java return an empty list
我有我的Java方法作为下面.
1 2 3 4 5 6 7 8 9 | public List<Lookup> findAll(String lang) { Query query = entityManager.createNamedQuery("Lookup.findAll"); if (isValidLang(lang)) { query.setParameter("lang", lang); return query.getResultList(); } else { //return empty list } } |
现在该方法returns名录的有效匹配的大厅。
但如果那不是我想要的情况,返回一个空荡荡的大名单。我的问题是我如何更新代码与什么是最好的方式,比一个空荡荡的归来,并不列出代码不会不?
应该这样做:
1 2 3 |
1 2 3 4 5 6 | if (isValidLang(lang)) { query.setParameter("lang", lang); return query.getResultList(); } else { return new ArrayList<Lookup>(); // return array list instance. } |
使用
1 2 3 |
尝试如下:
1 2 3 4 5 6 7 8 9 | public List<Lookup> findAll(String lang) { List<Lookup> result = new ArrayList<Lookup>(); Query query = entityManager.createNamedQuery("Lookup.findAll"); if (isValidLang(lang)) { query.setParameter("lang", lang); result = query.getResultList(); } return result; } |
号
使用
1 2 3 4 5 6 7 8 9 10 11 | public List<Lookup> findAll(String lang) { Query query = entityManager.createNamedQuery("Lookup.findAll"); ArrayList lookupList = null; if (isValidLang(lang)) { query.setParameter("lang", lang); lookupList = <ArrayList> query.getResultList(); } return (null != lookupList ? lookupList : Collections.EMPTY_LIST); } |
。