Я не хочу выполнять задание за вас, но могу дать вам подсказки, которые должны позволить вам продвинуться дальше.
Сначала, в связи с ошибками, которые вы получаете, вы должны объявить типы переменныхв Java
, поэтому вместо того, чтобы просто сказать
inputFile = FileIO(args[0])
, вы должны объявить тип этой переменной. Я не уверен, что FileIO()
возвращает, но если это File
объект, вам нужно объявить
File inputFile = FileIO(args[0])
Без этого компилятор не знает, что такое inputFile
и выдает эту ошибку.
Далее вам сообщают, что FileIO(String)
не является функцией. FileIO - это просто класс, но вы забыли указать, какую функцию в классе вы хотите использовать. Я ожидаю, что вы хотели использовать FileIO.readfile(args[0])
например. Неясно, является ли ваш первый main
реализацией main
в FileIO
или отдельным файлом, в котором просто используется FileIO
, поэтому мне нужно узнать больше, чтобы углубиться в детали. Обратите внимание, что у вас должен быть экземпляр класса (созданный с использованием new FileIO()
, если вы собираетесь вызывать нестатические методы в нем.
Наконец, вам необходимо понять концепцию массивов, начинающихся с нуля. Массивс одним элементом array.length
скажет 1
, но вы найдете значение по индексу array[0]
. Например:
String[] args = ["a","b"];
args.length; // This is 2
args[0]; // This is "a"
args[1]; // This is "b"
Таким образом, последний элемент всегда имеет индекс array.length-1
.
Когда вы говорите if(args.length == 0)
, вы действительно спрашиваете, является ли массив пустым.