Я ковыряю вэбкраулер, он (на данном этапе) должен сканировать страницу на определенную глубину и выдавать текст с этих страниц. Я создал отдельный класс Depth_test, который парсит страницу на нужную глубину и создает в итоге ArrayList с перечнем всех ссылок. Как я могу из этого класса вытащить этот самый ArrayList в класс Main для дальнейшей с ним работы? Работать в одном классе просто методами я не хочу, так как там много еще писать и я хочу хоть это в класс запрятать.
По идее я должен создать объект этого класса и геттером его вытащить в Main, но у меня в Depth_test идет свой main(String[] args) и я не могу понять, как быть в этом случае.
import org.jsoup.nodes.Document; import org.jsoup.nodes.Element; import org.jsoup.select.Elements; import java.io.IOException; import java.util.ArrayList; public class Depth_test { private static final int MAX_DEPTH = 2; ArrayList links = new ArrayList(); public Depth_test() throws IOException { links = new ArrayList(); } public static void main(String[] args) throws IOException { ArrayList url_arr = new ArrayList(); url_arr.addAll( new Depth_test().getPageLinks("wiki/Super_Mario_All-Stars", 0)); } public ArrayList getPageLinks(String URL, int depth) { URL = "https://ru.wikipedia.org/" + URL; if ((!links.contains(URL) && (depth < MAX_DEPTH))) { System.out.println(">> Depth: " + depth + " [" + URL + "]"); try { links.add(URL); Document document = Jsoup.connect(URL).get(); Elements div_field = document.select("div[class=mw-parser-output]"); Elements linksOnPage = div_field.select("a[href^=\"/wiki/\"]"); depth++; for (Element page : linksOnPage) { getPageLinks(page.select("a").attr("href"), depth); } } catch (IOException e) { System.err.println("For '" + URL + "': " + e.getMessage()); } } return links; } }