我目前正在开发一款游戏,我遇到了一个小问题。 当玩家从商店购买商品时,我将其设定为以75%的购买价格出售。 但是当检查价值时(在销售商品之前),它会说,例如,"可以出售115.0黄金" 如何删除" .0"来自" 115"? 我还不熟悉编码,感谢任何帮助。 (它也用括号显示,我也想删除它们。例如:"你可以卖这个(120.0)金币。")
编辑:这是java。
int ShopValue = (int)Math.floor(getItemShopValue(removeId, 1, removeSlot));
String ShopAdd = "";
if (ShopValue >= 1000000000) {
ShopAdd = " (" + Math.floor(ShopValue*.75 / 1000000000) + " billion)";
} else if (ShopValue >= 1000000) {
ShopAdd = " (" + Math.floor(ShopValue*.75 / 1000000) + " million)";
} else if (ShopValue >= 1000) {
ShopAdd = " (" + Math.floor(ShopValue*.75 / 1000) + "k)";
} else if (ShopValue >= 100) {
ShopAdd = " (" + Math.floor(ShopValue*.75 / 1) + ")";
} else if (ShopValue >= 10) {
ShopAdd = " (" + Math.floor(ShopValue*.75 / 1) + ")";
}
c.sM(c.getItems().getItemName(removeId)+": shop will buy for <col=255>"+ShopAdd+"</col> coins");
}
}
答案 0 :(得分:0)
简单的方法是使用整数类型转换
(int)Math.floor(ShopValue*.75 / 1)
答案 1 :(得分:0)
Math.floor
正在返回 double 参数,因此在将其提交给ShopAdd
字符串之前,您必须将其转换为int。