У меня есть задание на Java: исследовать CSV с некоторыми API. У нас есть несколько CSV-файлов с именем / полом / номером рождения, сначала девочек, а затем мальчиков, например:

Мой учитель дал одну функцию:
private int getCsvRowOfMostPopularNameByGender(int year, String gender){
int rank = -1;
SEFileUtil seFileUtil = new SEFileUtil(getPathToCSV(year));
for (CSVRecord record : seFileUtil.getCSVParser()) {
String currGender = record.get(1);
if (currGender.equals(gender)){
rank = (int) record.getRecordNumber();
break;
}
}
return rank;
} // returning index of the First popular Name
Теперь мне нужно написать функцию, которая возвращает ранг данного имени. Я написал это, используя пример функции:
private int getRank (int year, String name, String sex ){
SEFileUtil seFileUtil = new SEFileUtil(getPathToCSV(year));
for (CSVRecord record : seFileUtil.getCSVParser()) {
if (record.get(0).equals(name) && record.get(1).equals(sex)) {
return (int) record.getRecordNumber() - getCsvRowOfMostPopularNameByGender(year,sex) + 1;
}
}
return -1;
}
Но затем я захотел найти сам, что я хотел получить доступ непосредственно к индексу i файла CSV, соответствующему рассматриваемому году и возвращающему -1 в случае столкновения вне диапазона. Я попытался объявить новый тип объекта CSVParser или CSVRecord, как мы использовали для for l oop, но без какого-либо успеха
Я думаю, что мы используем API apach: http://commons.apache.org/proper/commons-csv/jacoco/org.apache.commons.csv/index.source.html