Я попытаюсь сделать это настолько просто, насколько смогу, потому что я запутываюсь, просто думая об этом.
У меня есть data.csv, в котором 7 значений, разделенных запятыми, и 804 строки.
Например:
10,100,1000,1,10,100,1050
10,130,1000,1,12,100,1040 etc
Моя задача - создать программу на Java с графическим интерфейсом, которая выполняет следующие задачи:
1.Считайте CSV, разбейте строки и сохранитев массив (думаю, я в порядке с этим битом)
После того, как данные были сохранены в массивах, необходимо манипулировать некоторыми данными.Например;
Найти среднее значение всех «столбцов» в CSV -Найдите минимальное / максимальное значения всех столбцов
Данные графикаграфик (это может быть проигнорировано на данный момент, ха-ха)
Так что я просто очень озадачен тем, как правильно хранить мои данные в многомерном массиве и ТАКЖЕ иметь возможность манипулироватьопределенные элементы массива.Мне также нужна помощь, потому что я просто не понимаю, стоит ли мне сосредоточиться на своем графическом интерфейсе, например, создать кнопку, которая будет загружать CSV, кнопку, которая будет рассчитывать средние значения и т. Д. И т. Д.
В данный момент у меня естьвсего один класс, который открывает файл (только через исходную папку).Читает это построчно, и (я думаю) сохраняет это в массиве.
Я не ищу никого, кто бы держал меня за руку и полностью решил это для меня.Но я просто мог бы сделать это с некоторой помощью и руководством, потому что я думаю, что просто запутываю себя гораздо больше.сильный текст
Будет ли несколько классов для каждой из «функций» более понятными?Например, у меня есть класс для расчета среднего значения, класс для расчета минимального / максимального значения и т. Д., И если это правильный путь вперед, как лучше всего включить его в графический интерфейс пользователя.
Извините заМного вопросов и огромное спасибо всем, кто может помочь!
public static void main(String[] args) throws IOException {
/////////DECLARING ARRAYS/VARIABLES//////
String line;
double year[] = new double [5000];
double month[] = new double [5000];
double tmax[] = new double [5000];
double tmin[] = new double [5000];
double af[] = new double [5000];
double rain[] = new double [5000];
double sun[] = new double [5000];
//////////////////////////////////////////
////////////READING THE FILE "SHEFFIELD DATA" *CHANGE TO JUST DATA FOR EASYNESS**//////////
BufferedReader file = new BufferedReader(new FileReader("sheffielddata.csv"));
//////////////////////////////////////////////////////////////////////////////////////////
///////////INDEXING THE ARRAY /////////////////
int index=0;
///////////////////////////////////////////////
////////LOOP TO ENSURE THE FILE READS EACH LINE/////////////////
while( (line = file.readLine()) != null){
///////////////////////////////////////////////////////////////
//////////APPLY THE SPLIF METHOD///////////////////////////////
String[] splits = line.split(","); //This will have total of 7 values
//////////////////////////////////////////////////////////////
//////////////ARRAY AND STRINGS///////////////////////
String name = splits[0];
int[] intArray = new int[7];
double value0 = Double.parseDouble(splits[0]);
double value1 = Double.parseDouble(splits[1]);
double value2 = Double.parseDouble(splits[2]);
double value3 = Double.parseDouble(splits[3]);
double value4 = Double.parseDouble(splits[4]);
double value5 = Double.parseDouble(splits[5]);
double value6 = Double.parseDouble(splits[6]);
year[index] = value0;
month[index] = value1;
tmax[index] = value2;
tmin[index] = value3;
af[index] = value4;
rain[index] = value5;
sun [index] = value6;
///////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////
}//LOOP ENDS READING THE CSV FILE