俯仰和偏航 - 定位和传送
Pitch and Yaw - Location and Teleportation
偏航角和俯仰角是双精度值,但是在新的 Location
对象中,他们要求浮动而我做不到 (Float) pitch
,因为它显示了一个错误,说我不能做吧。
这是我的代码:
float yaw = (Float) getConfig().get("location.Yaw");
float pitch = (Float) getConfig().get("location.Pitch");
Location teleport = new Location(w, getConfig().getDouble("location.X"), getConfig().getDouble("location.Y"), getConfig().getDouble("location.Z"), yaw, pitch);
在我的配置中,yaw 和 pitch 是 double 值,坐标不是问题所以让我们忽略它们,问题只是 yaw 和 pitch
新的 Location
对象初始化参数是:
Location teleport = new Location(World world, Double x, Double y, Double z, Float yaw, Float pitch);
您可以使用 Float.parseFloat()
将字符串转换为浮点数。例如:
String str = "13.715";
float value = Float.parseFloat(str); //value is now equal to 13.715f
要从配置中获取值并解析浮点数,您可以使用:
String valueFromConfig = getConfig().getString("my.path");
float myFloat = Float.parseFloat(valueFromConfig);
所以,这就是您的代码的样子:
float yaw = Float.parseFloat(getConfig().get("location.Yaw"));
float pitch = Float.parseFloat(getConfig().get("location.Pitch"));
Location teleport = new Location(w, getConfig().getDouble("location.X"), getConfig().getDouble("location.Y"), getConfig().getDouble("location.Z"), yaw, pitch);
假设没有 getFloat
方法,使用:
float yaw = (float) getConfig().getDouble("location.Yaw");
您不能将 String
转换为 Float
。引用转换从不将对象转换为其他对象——它们只允许您拥有引用同一对象的不同类型的引用。由于 get
returns 一个 String
对象,并且 String
不是 Float
,你不能将 String
转换为 Float
.
float
和Float
之间的区别也是相关的。除了 boxing/unboxing 转换之外,您永远不能在基元和引用之间进行转换。
偏航角和俯仰角是双精度值,但是在新的 Location
对象中,他们要求浮动而我做不到 (Float) pitch
,因为它显示了一个错误,说我不能做吧。
这是我的代码:
float yaw = (Float) getConfig().get("location.Yaw");
float pitch = (Float) getConfig().get("location.Pitch");
Location teleport = new Location(w, getConfig().getDouble("location.X"), getConfig().getDouble("location.Y"), getConfig().getDouble("location.Z"), yaw, pitch);
在我的配置中,yaw 和 pitch 是 double 值,坐标不是问题所以让我们忽略它们,问题只是 yaw 和 pitch
新的 Location
对象初始化参数是:
Location teleport = new Location(World world, Double x, Double y, Double z, Float yaw, Float pitch);
您可以使用 Float.parseFloat()
将字符串转换为浮点数。例如:
String str = "13.715";
float value = Float.parseFloat(str); //value is now equal to 13.715f
要从配置中获取值并解析浮点数,您可以使用:
String valueFromConfig = getConfig().getString("my.path");
float myFloat = Float.parseFloat(valueFromConfig);
所以,这就是您的代码的样子:
float yaw = Float.parseFloat(getConfig().get("location.Yaw"));
float pitch = Float.parseFloat(getConfig().get("location.Pitch"));
Location teleport = new Location(w, getConfig().getDouble("location.X"), getConfig().getDouble("location.Y"), getConfig().getDouble("location.Z"), yaw, pitch);
假设没有 getFloat
方法,使用:
float yaw = (float) getConfig().getDouble("location.Yaw");
您不能将 String
转换为 Float
。引用转换从不将对象转换为其他对象——它们只允许您拥有引用同一对象的不同类型的引用。由于 get
returns 一个 String
对象,并且 String
不是 Float
,你不能将 String
转换为 Float
.
float
和Float
之间的区别也是相关的。除了 boxing/unboxing 转换之外,您永远不能在基元和引用之间进行转换。