我如何在 java 中的计时器上循环 if 语句?

how do i loop an if statement on a timer in java?

所以我正在尝试制作一个 Minecraft 插件,它可以随机间隔在聊天中发送一串文本。现在我试图让它每 5 分钟从第 1 行开始。我只是不知道该怎么做 Ps:我是 java 的新手。

Random rand = new Random();
int n = rand.nextInt(3);

if (n == 1) {
    Bukkit.broadcastMessage("yeet");
}

快速搜索应该会引导您找到以下内容: https://bukkit.org/threads/creating-a-loop.119088/ https://www.codegrepper.com/code-examples/java/bukkit+repeating+task+every+minute+spigot

未经测试的代码:

Bukkit.getScheduler().scheduleSyncRepeatingTask(plugin, new Runnable() {
    @Override
    public void run() {
        Bukkit.broadcastMessage("This message is shown immediately and then repeated every second");
    }
}, 0L, 20L); //0 Tick initial delay, 20 Tick (1 Second) between repeats

好像在我的世界里,20 Ticks 等于一秒。因此,您应该计算 20 x 60 x 5 以获得 5 分钟所需的刻度数。

试试 6000。

我也推荐你阅读Bukkit项目的Javadoc

https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/scheduler/BukkitScheduler.html#scheduleSyncRepeatingTask(org.bukkit.plugin.Plugin,org.bukkit.scheduler.BukkitRunnable,long,long)

这应该会将您带到当前使用的函数。