Java乘法

时间:2014-01-10 19:08:55

标签: java plugins minecraft

我正在创建一个基于电影InTime的Minecraft插件,并且我正在尝试创建代码,玩家在玩家死亡时会丢失25%的时间。

目前的代码是:

String minus = itapi.getTimeString(player.getName());
itapi.removeTime(player.getName(), itapi.getDeathTime());
ItemStack book = itapi.createTimeCard("Death of " + player.getName(), minus, 1);
itapi.removeTime(player.getName(), minus * 0.25);
e.getDrops().add(book);

虽然第4行标记为“The operator * is undefined for the argument type(s) String, double

我知道这可能是一个真正简单的解决方案,但我想出任何建议吗?

TimeString必须是string

2 个答案:

答案 0 :(得分:3)

您不能将String乘以任何东西。您需要将其转换为double,然后将其与Double.parseDouble相乘:

Double.parseDouble(minus) * 0.25

如果NumberFormatExceptions无法表示为数字,请务必处理任何minus

答案 1 :(得分:1)

您将minus定义为String,然后将String *定义为double。你不能将String乘以double。将TimeString转换为实际值,如int秒,然后您可以对其进行数学运算。