Хранение найденных значений foreach из PHP в Java - PullRequest
0 голосов
/ 30 октября 2018

Итак, я действительно новичок в Java (на самом деле записался на весенний семестр) и пробую некоторые базовые упражнения на Java.

Я пытаюсь создать JAR-плагины для определенной игры, серверное программное обеспечение которой написано на Java, и аналогичный плагин написан на PHP для той же игры, за исключением того, что программное обеспечение серверного движка написано на PHP, а не на Java. Разработчик плагина PHP предоставляет свой исходный код в репозитории GitHub.

Текущая проблема, с которой я сталкиваюсь (я купил 24-часовую книгу по изучению Java, уже прочитал ее и выполнил большую часть своей деятельности, но, похоже, она не очень хорошо освещала это; проводите тщательный поиск по Google и другим вопросам и учебникам по Stack и т. д. безрезультатно), пытаясь «преобразовать» эти несколько строк в Java из плагина PHP.

$c = $this->getConfig()->getAll();
foreach ($c["Commands"] as $i) {
$this->getServer()->getScheduler()->scheduleRepeatingTask(new 
TimeCommand($this,$i["Command"]),$i["Time"] * 1200);

Я понимаю, что говорит код, который должен получить все данные из файла конфигурации, и для каждого раздела, помеченного как «Команды», сохранить как $i, затем scheduleRepeatingTask (scheduleRepeatingTask(Task task, into period);, где задача - это команда для run - это переменная, насколько я понимаю.) Выполнение каждой из перечисленных команд в конфигурации с интервалом времени, указанным в файле конфигурации. Данные также поступают из LinkedHashMap.

public class main extends PluginBase {
    public List<String> list;
    public Config config;
    public static String cmd;
    public LinkedHashMap LinkedHashMap;

    public void onEnable() {
        if (!this.getDataFolder().exists()) {
            this.getDataFolder().mkdirs();
            this.config = new Config(new File(this.getDataFolder() + "/config.yml"), 2, (LinkedHashMap)new LinkedHashMap<String, Object>(){
                {
                    put("commands", new String[] { "command", "time" });
                }
            });

            config.save();
        }

        this.saveDefaultConfig();

        Object configData = this.getConfig().getAll();

        configData.forEach((configData["commands"]) -> {
            final Long cmds[] = new Long[1];
            cmds[0] = commands.getKey();
            this.getServer().getScheduler().scheduleRepeatingTask(null, null, 0);
        });
    }

Я просто не могу себе представить, чтобы это работало по какой-то причине, даже после всех исследований, которые я провел над циклами forEach.

Извините, если это глупый вопрос или что-то, я просто пытаюсь выучить (да, я нажал на соответствующие вопросы выше и не нашел ничего такого полезного; если только я не слепой, что часто случается).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...