Я объявил массив String
.Почему мой массив (5 элементов) меняет размер динамически?
String[] csvColumns = new String[5];
Однако, при чтении из файла CSV
:
String[] csvColumns = new String[5]; // Explicitly including this declaration again in case Stack Overflow users need to see the scope of the variable.
String row; // Will receive each column of 1 line at a time of the CSV file.
while ((row = inFile.readLine()) != null) // BufferedReader used to parse CSV File.
{
csvColumns = row.split(","); // Each element of the array will recieve the value of each column.
// Initialise class attributes with each column.
}
Если столбец в строке файла CSV
не содержит каких-либо значений (в моем файле это только когда-либо может быть дело для последнего столбца, потому что столбец не является обязательным и содержит заметки о конкретной проблеме), тогда csvColumns
уменьшает его размер на 1. Я не вижу, как это возможно, если я использую массив, - но опять же, я - новичок-программист.
Любая причина, почему это может случиться?
Редактировать * Спасибо за оба ответа, очень полезно. Должен был проверить тип возврата метода split
! (Спасибо @chrylis).
Спасибо. У меня создалось впечатление, что термин для массива этого типа назывался «статическим массивом» - глупым. –
Поняв, что тип возврата «split» действительно был блестящим, просто понимая, что теперь - как не было «нового» оператора, но не думал проверять тип возврата «split» –