展开全部
你好!
问题是这样的:从错误信息我们知道:main函数中出现了空指针。
源代码中加下划线的那一句说明了问题所在.到底是为什么呢?
我们来看看那一句代码,
while(buffer.readLine()!=null){//第一句
l2.add(buffer.readLine());//第二句
}
从代码中看到循环结束的条件是buffer.readLine()为空,就是文件的末尾。第一句从文件中读了一行话,判断不为空,再从文件中读一句,加到l2链表中,加到链表时没有判断是否为空,故出错。
楼主这段代码,似乎要丢失一半的数据。
正确的做法是:
String strTemp=buffer.readLine();//从文件中读一行文字
while(strTemp!=null){//判断文字不为空
l2.add(strTemp);//加入链表
strTemp=buffer.readLine();//再读取下一行文
}
有问题追问哦 ^-^
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询