我是java新手,我正在尝试创建一个Android应用程序,你可以倾斜你的设备旋转一个imageview。除了图像视图旋转方向错误外,我已经掌握了所有内容。因此,如果我的双号中的数字是> 0,我想把 - 放在它前面。但如果它是< 0,我想删除 - 就在它前面。我试过这样做:
以下是变量:
double xaxis;
String xaxis3;
这是我的代码:
if (xaxis < 0) {
xaxis3 = Double.toString(xaxis);
xaxis3 = xaxis3.replaceAll("-", "");
double xaxis = Double.parseDouble(xaxis3);
}
else {
xaxis3 = Double.toString(xaxis);
xaxis3 = ("-" + xaxis3);
double xaxis = Double.parseDouble(xaxis3);
}
请对我好,并想到我是编程的新手。谢谢!
答案 0 :(得分:6)
xaxis = -xaxis;
但是不清楚为什么你要使用字符串表示...避免字符串转换,除非你实际上需要它们。
此外,声明一个新的本地变量,它隐藏了一个实例变量,并且在一个块的结尾处这样做是不会有用的:
... {
xaxis3 = Double.toString(xaxis);
xaxis3 = ("-" + xaxis3);
double xaxis = Double.parseDouble(xaxis3);
}
你需要小心这样的事情 - 虽然我希望一个好的IDE在这种情况下警告你一个未使用的局部变量,并希望重复名称。
答案 1 :(得分:1)
你试过吗
xaxis3 = Double.toString(-xaxis);
或
String your_string = "" + (-xaxis);
答案 2 :(得分:0)
目前尚不清楚您想要实现的目标,但如果您不想跨越X轴边界,这就是您所需要的:
if(xaxis < 0 || xaxis > MAX_AXIS_X) {
xaxis = -xaxis;
}