获取java.lang.NullPointerException at line System.out.println(record.get( "TemperatureF" )) 不知道为什么



我在第System.out.println(record.get("TemperatureF"))行得到一个NullPointerException。我不知道为什么。 我认为record =coldestHourInFile(parser);没有初始化记录对象,因为如果我创建另一个CSVRecord对象并通过它初始化记录对象,它工作正常。

public void testMultiplefile()
{
DirectoryResource dr=new DirectoryResource();//for accessing multiple csv files
CSVRecord record =null;
File f1=null;       
for(File f:dr.selectedFiles())
{
FileResource fr=new FileResource(f);//c
CSVParser parser=fr.getCSVParser();
if(record==null)
{
record=coldestHourInFile(parser);  
f1=f;
}
else
{
if(Double.parseDouble(record.get("TemperatureF")) > 
Double.parseDouble(coldestHourInFile(parser).get("TemperatureF")))
{
f1=f;
record=coldestHourInFile(parser);//changing record reference
}
}
}
System.out.println(f1.getName());//printing csv file name
System.out.println(record.get("TemperatureF"));//printing record temperature column
}

请看这一行:

record=coldestHourInFile(parser);

如果 colerstHourInFile 返回 null,则会在程序的最后一行获得 NullPointerException。

最新更新