Java 如果double为负数,如何切换?

Java 如果double为负数,如何切换?,java,double,toggle,Java,Double,Toggle,我是java新手,我正在尝试创建一个android应用程序,你可以倾斜你的设备来旋转图像视图。我得到了一切,除了图像视图旋转方向错误。所以如果我的双精度中的数字大于0,我想在它前面加一个-。但是如果它小于0,我想删除它前面的-。我试着这样做: 以下是变量: double xaxis; String xaxis3; 这是我的代码: if (xaxis < 0) { xaxis3 = Double.toString(xaxis); xaxis3 = xaxis

我是java新手,我正在尝试创建一个android应用程序,你可以倾斜你的设备来旋转图像视图。我得到了一切,除了图像视图旋转方向错误。所以如果我的双精度中的数字大于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);
    }
if(xaxis<0){
xaxis3=双toString(xaxis);
xaxis3=xaxis3.replaceAll(“-”,”);
double xaxis=double.parseDouble(xaxis3);
}
否则{
xaxis3=双toString(xaxis);
xaxis3=(“-”+xaxis3);
double xaxis=double.parseDouble(xaxis3);
}
请对我好一点,想想我是编程新手。谢谢大家!

嗯,我想你想要:

xaxis = -xaxis;
但不清楚为什么要使用字符串表示法。。。避免字符串转换,除非您确实需要它们

此外,声明一个新的局部变量来隐藏实例变量,并在块的末尾这样做,将不会有用:

... {
    xaxis3 = Double.toString(xaxis);
    xaxis3 = ("-" + xaxis3);
    double xaxis = Double.parseDouble(xaxis3);
}
您需要小心这样的事情——尽管我希望一个好的IDE会警告您在这种情况下有一个未使用的局部变量,希望还有重复的名称。

您尝试过吗

xaxis3 = Double.toString(-xaxis);


不清楚您想要实现什么,但如果您不想跨越X轴边界,这就是您需要的:

if(xaxis < 0 || xaxis > MAX_AXIS_X) {
    xaxis = -xaxis;
} 
if(xaxis<0 | | xaxis>MAX_轴X){
xaxis=-xaxis;
} 

我想字符串表示法只是添加/删除
-
字符。@Fls'Zen:可能-在这种情况下,可以完全删除它。欢迎使用StackOverflow。我已冒昧地编辑了您的问题标题,以删除无关的标记。看见
if(xaxis < 0 || xaxis > MAX_AXIS_X) {
    xaxis = -xaxis;
}