Сделал как и многие и через for each и просто перебором -но все равно выдает ошибку вот в этой строке, где идет добавление в массив.
Что здесь не так?
Код ниже, а строка с ошибкой вот( IDEA подчеркивает lines и пишет "illegal forward reference"):
lines.add(o.toString());
Видимо ругается что из статика идет динамическое обращение к массиву. Ну или я хз :-)
package com.javarush.task.task15.task1525;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.List;
import static com.javarush.task.task15.task1525.Statics.FILE_NAME;
/*
Файл в статическом блоке
*/
public class Solution {
static
{
try {
BufferedReader f = new BufferedReader(new FileReader(Statics.FILE_NAME));
for (Object o : f.lines().toArray()) {
lines.add(o.toString());
}
}catch (IOException e){
e.printStackTrace();
}
}
public static List<String> lines = new ArrayList<String>();
public static void main(String[] args) {
System.out.println(lines);
}
}