Добавить метод внутри команды с помощью dispatchCommand

Я пытаюсь вставить метод, который предоставляет случайную строку из массива и выполняет ее в команде Minecraft.

Ошибка

В нем говорится, что тип java: 'void' здесь не разрешен при добавлении оператора + между строками с помощью метода randomKey().

Я разрабатываю плагин внутри IntelliJ.

public class events implements Listener{




    public static void main(String[] args)
    {
        randomKey();
    }

    public static void randomKey(){
        String[] crates  = {"Basic", "Classic", "Crazy", "Galactic"};
        Random random = new Random();
        int RandomNumber = random.nextInt(crates.length);
        System.out.println(crates[RandomNumber]);
    }


    @EventHandler
    public  void keyGiver(BlockBreakEvent event ){



        //get block type grass

        Block block = event.getBlock();
        Material material  = block.getType();

        Player player = event.getPlayer();



        if (material.equals(Material.GRASS)){

            getServer().dispatchCommand(getServer().getConsoleSender(), "cc give Physical"+randomKey()+" 1 " + player.getName() + " ");
        }


    }```

имена классов в CamelCase, имена методов в нижнем регистре, имена переменных в нижнем регистре, просто заметил, что

kleopi 29.05.2019 18:07
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
1
25
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

вам нужно что-то вернуть, чтобы использовать функцию в выражении, это исправление, которое я рекомендую на основе вашего кода:

public static String randomKey(){
    String[] crates  = {"Basic", "Classic", "Crazy", "Galactic"};
    Random random = new Random();
    int RandomNumber = random.nextInt(crates.length);
    System.out.println(crates[RandomNumber]);
    return crates[RandomNumber];
}

Другие вопросы по теме