从列表中选择随机项目 (Bukkit)

Picking Random Item From List (Bukkit)

我如何从这个列表中随机抽取奖励?

Material[] superLucky = { Material.RECORD_10, Material.RECORD_9, Material.RECORD_8  };

            for(Material m : superLucky) {
            if(m == Material.RECORD_10) {
                player.sendMessage(ChatColor.GRAY + "- Enchanted Skull Sword");
            }
            if(m == Material.RECORD_9) {
                player.sendMessage(ChatColor.GRAY + "- Enchanted Skull Helmet");
            }
            if(m == Material.RECORD_8) {
                player.sendMessage(ChatColor.GRAY + "- Enchanted Skull Pickaxe");
            }
        }

你会从这样的数组中收到一个随机项目:

int idx = new Random().nextInt(superLucky.length);
Material randomItem = superLucky[idx];

//创建生成随机数的函数

int rrec = (customRandomNumber())%superLucky.length;

使用这个索引来获得随机奖励。 注意:您可能会一次又一次地获得与随机相同的奖励。

有多种方式:

// Math.random() returns a double in the range of 0.0 excluding 1.0
int index = (int)(Math.random() * superLucky.length);

// Random.nextInt() returns an integer in the range of 0.0 excluding the specified number
int index = new Random().nextInt(superLucky.length);

然后做

Material item = superLucky[index];