创建表示数据的对象(注意我将名称从数据更改为 CSV):
class CSV {
public CSV(String number, String data1, String data2){
this.number = number;
this.data1 = data1;
this.data2 = data2;
}
String number;
String data1;
String data2;
public String getNumber(){
return this.number;
}
public boolean hasData(){
if ( ( data1.equals("Yes" == true ) && (data2.equals("No" == true) )
return true;
return false;
}
}
然后将数据从 csv 导入到它(省略文件操作):
List<Data> csvList = new ArrayList<CSV>();
用数字创建结果列表。
列表编号 = new ArrayList();
然后遍历所有实体。
for(CSV data:csvList){
if ( data.hasData() )
numbers.add(data.getNumber());
}
如果数据不明确是或否,那么你必须知道域,所以在编译之前必须知道所有的答案,有解决方案。
在紧要关头,您可以将答案分组并添加方法来猜测它是什么类型的数据:
public boolean belongTo(String column) {
if ( column.contains("Yes") == true )
return true;
if ( column.contains("yes") == true )
return true;
if ( column.contains("Ja") == true )
return true;
return false;
}
您对 data2 执行相同的操作。
以下是更改数据类的方法:
而不是
if ( ( data1.equals("Yes" == true ) && (data2.equals("No" == true) )
放:
if ( ( this.belongsTo(data1) == true ) && (this.belongsTo(data2) == true) )
最后我们有了 CSV 类:
class CSV {
public CSV(String number, String data1, String data2){
this.number = number;
this.data1 = data1;
this.data2 = data2;
}
String number;
String data1;
String data2;
public String getNumber(){
return this.number;
}
public boolean hasData(){
if ( ( data1.equals("Yes" == true ) && (data2.equals("No" == true) )
return true;
return false;
}
public boolean belongsTo(String column) {
if ( column.contains("Yes") == true )
return true;
if ( column.contains("yes") == true )
return true;
if ( column.contains("Ja") == true )
return true;
/* insert here your "Yes" equivalents */
return false;
}
}