java - 空返回,从 csv 文件中获取特定数据
问题描述
我正在尝试从 csv 文件中获取特定数据。在这种情况下,我使用 ID,它是文件中的第一个字符串。
动物详情.txt
0,2,AmercianShorthair,100,AmercianShorthair,AmercianShorthair,y,y,900.0,Ann,
3,4,GermanShepherd,100,GermanShepherd,GermanShepherd,no,yes,600.0,Dave,
6,3,Poodle,100,Poodle,Poodle,yes,no,300.0,Dianna,
456,4,Azawakh,50,Unknown,Azawakh,no,no,300.0,April,
25041019042018,1,Vizsla,50,Vizsla,TreeingTennesseeBrindle,no,yes,500.0,Lex,
3271,1,Beagle,50,Beagle,Unknown,no,no,200.0,Blanton,
48331827032019,33,sheperd,50,50,50,no,yes,300.0,Mike,
主应用
public class AppTest {
public static void main(String[] ages) {
//Load file
AnimalManager aMgr = new AnimalManager();
aMgr.loadFromFile("AnimalDetails.txt");
//Test DELETE By Animal ID
try {
Animals anim = aMgr.getAnimalById("0");//Insert animal ID here
aMgr.deleteAnimal(anim);
} catch (IllegalArgumentException exc) {
System.out.println(exc);
}
}
}
经理
//Delete animal
public void deleteAnimal (Animals a) {
if (a == null)
throw new IllegalArgumentException("Animal argument is null");
animalList.remove(a);
}
//Get animal by ID
public Animals getAnimalById(String ID) {
for (Animals a : this.animalList) {
if (a.getID().equals(ID))
return null;
}
return null;
}
当我在主应用程序中插入动物 ID 时,它会返回 null 而不是成功删除消息。这里可能是什么问题?
输出: java.lang.IllegalArgumentException:动物参数为空
解决方案
看起来条件语句应该为 getanimalbyID 返回 ID 而不是 null :)
推荐阅读
- javascript - 为什么 Webpack 会注入 React
- dart - 在颤动的第二个屏幕中访问类数据
- python - 根据条件/缺失数据将默认行插入 Pandas Dataframe
- c# - 如何在 EF6 中延迟加载任何内容时记录
- c++ - 使用互斥锁移动类的语义
- django - Django 在会话中仅重定向用户一次
- ruby - 将 Ruby 线程的结果作为参数传递给方法
- windows - 程序集:如何更改此代码以要求用户输入
- swift4 - Mapbox iOS:开始导航中途并跳过一个或多个 wyapoints
- css - 网格模板列:和行:不起作用。Netbeans 说未知属性