小编Ada*_*m D的帖子

流:避免 NullPointerException

我必须获取数组的第一个元素。但该元素可能为空;如果元素为空,我将放置一个空字段(我正在尝试生成一个 pdf)

这是我现在的代码:

public void makePdf(Long id) throws IOException {
    Candidacy ca = candidacyRepository.findOne(id); 
    cos.beginText();

    cos.showText(
       ca.getInterviews().stream().map(Interview::getAgency).map(Agency::getAgencyName).collect( Collectors.toList()).get(0)!=null?ca.getInterviews().stream().map(Interview::getAgency).map(Agency::getAgencyName).collect( Collectors.toList()).get(0):"")); 

    cos.endText();
}
Run Code Online (Sandbox Code Playgroud)

所以我不想阻止pdf的生成。非常感谢您的支持!

更新

抱歉不够精确:我也按日期排序。

public void makePdf(Long id) throws IOException {
        Candidacy ca = candidacyRepository.findOne(id); 
        cos.beginText();

        cos.showText(
           ca.getInterviews().stream().sorted((a,b)-> a.getInterviewDate().compareTo(b.getInterviewDate())).sorted((a,f)->f.getInterviewDate().compareTo(a.getInterviewDate())).sorted((b,f)->b.getInterviewDate().compareTo(f.getInterviewDate())).map(Interview::getAgency).map(Agency::getAgencyName).collect( Collectors.toList()).get(0)!=null?ca.getInterviews().stream().sorted((a,b)-> a.getInterviewDate().compareTo(b.getInterviewDate())).sorted((a,f)->f.getInterviewDate().compareTo(a.getInterviewDate())).sorted((b,f)->b.getInterviewDate().compareTo(f.getInterviewDate())).map(Interview::getAgency).map(Agency::getAgencyName).collect( Collectors.toList()).get(0):"")); 

        cos.endText();
    }
Run Code Online (Sandbox Code Playgroud)

我收到一个 NullPointerException:/ 谢谢你的帮助

java java-8

2
推荐指数
1
解决办法
2万
查看次数

标签 统计

java ×1

java-8 ×1