java - 两个变量相同,甚至应该不同的原因是什么?
问题描述
我正在尝试在 minecraft 中编写插件(开箱器)。我有问题,因为只要变量 current_item 和变量 next 相同,甚至应该不同。
Inventory inv = Bukkit.createInventory(null, InventoryType.CHEST, "Losowanie");
ItemStack rnditem = new ItemStack(Material.STICK);
ItemStack current_item = new ItemStack(Material.APPLE);
ItemStack next = new ItemStack(Material.STICK);
for(int i = 0; i < 15; i++) {
Random rand = new Random();
switch(rand.nextInt(2)) {
case 0:
rnditem.setType(Material.DIAMOND);
break;
case 1:
rnditem.setType(Material.GOLDEN_APPLE);
break;
}
inv.clear();
current_item = next;
next = rnditem;
inv.setItem(13, current_item);
inv.setItem(14, next);
p.updateInventory();
Thread.sleep(i*100);
}
解决方案
不同的变量被用来保存一个移动的参考,但rnditem
从未设置为一个新的参考
switch(rand.nextInt(2)) {
case 0:
rnditem.setType(Material.DIAMOND);
break;
case 1:
rnditem.setType(Material.GOLDEN_APPLE);
break;
}
应该改为
switch(rand.nextInt(2)) {
case 0:
rnditem = new ItemStack(Material.DIAMOND);
break;
case 1:
rnditem = new ItemStack(Material.GOLDEN_APPLE);
break;
}
推荐阅读
- javascript - firebase 错误 TS7006:参数“快照”隐式具有“任何”类型
- sql - 将存储过程结果/输出放入变量
- java - 无法在 linux 上安装 open jdk 8 172 版本
- inno-setup - 如何在 Inno Setup 中修改错误信息?
- javascript - 如何在现有静态网站的单个 url 上挂载 vuejs 应用程序?
- python - 如何在钩子函数中检索图层的名称?
- spring - spring mvc:在非@Controller端点上应用@ModelAttribute
- css - 中心 div 在 div 内
- python - 如何使用“group_by”查询塑造响应
- sql - 如何获取以映射表中的键命名的列的表