如何在java中指定如何制作平方根和绝对值?
这就是我所拥有的:
if(variable < 0){
variable = variable + variable2;
}
但有没有更简单的方法来获得Java的绝对值?
variable = |variable|
答案 0 :(得分:24)
使用Math
类中的静态方法 - 两种语言都没有运算符:
double root = Math.sqrt(value);
double absolute = Math.abs(value);
(同样没有操作员可以将值提升到特定的功率 - 使用Math.pow
。)
如果您经常使用这些,可能需要使用静态导入来使代码更具可读性:
import static java.lang.Math.sqrt;
import static java.lang.Math.abs;
...
double x = sqrt(abs(x) + abs(y));
而不是
double x = Math.sqrt(Math.abs(x) + Math.abs(y));
答案 1 :(得分:1)
使用java.lang.Math类,特别是绝对值和平方根:abs()
和sqrt()
方法。
答案 2 :(得分:1)
答案 3 :(得分:0)
Math.sqrt(Math.abs(variable))
可能不是更简单吗?
答案 4 :(得分:0)
import java.util.Scanner;
class my{
public static void main(String args[])
{
Scanner x=new Scanner(System.in);
double a,b,c=0,d;
d=1;
d=d/10;
int e,z=0;
System.out.print("Enter no:");
a=x.nextInt();
for(b=1;b<=a/2;b++)
{
if(b*b==a)
{
c=b;
break;
}
else
{
if(b*b>a)
break;
}
}
b--;
if(c==0)
{
for(e=1;e<=15;e++)
{
while(b*b<=a && z==0)
{
if(b*b==a){c=b;z=1;}
else
{
b=b+d; //*d==0.1 first time*//
if(b*b>=a){z=1;b=b-d;}
}
}
d=d/10;
z=0;
}
c=b;
}
System.out.println("Squre root="+c);
}
}
答案 5 :(得分:0)
int currentNum = 5;
double sqrRoot = 0.0;
int sqrRootInt = 0;
sqrRoot=Math.sqrt(currentNum);
sqrRootInt= (int)sqrRoot;