【转】Java.Math API 反正切算角度(四个象限情况要调整)

原文网址:http://hunter090730.iteye.com/blog/485770

Math.PI 记录的圆周率
Math.E 记录e的常量
Math中还有一些类似的常量,都是一些工程数学常用量。

Math.abs 求绝对值
Math.sin 正弦函数;Math.asin 反正弦函数
Math.cos 余弦函数;Math.acos 反余弦函数
Math.tan 正切函数;Math.atan 反正切函数;Math.atan2 商的反正切函数
Math.toDegrees 弧度转化为角度;Math.toRadians 角度转化为弧度
Math.ceil 得到不小于某数的最大整数
Math.floor 得到不大于某数的最大整数
Math.IEEEremainder 求余
Math.max 求两数中最大
Math.min 求两数中最小
Math.sqrt 求开方
Math.pow 求某数的任意次方, 抛出ArithmeticException处理溢出异常
Math.exp 求e的任意次方
Math.log10 以10为底的对数
Math.log 自然对数
Math.rint 求距离某数最近的整数(可能比某数大,也可能比它小)
Math.round //四舍五入法最接近该参数的int/long值.

Math.random 返回0,1之间的一个随机数

 


 public static void main(String args[]) {

  
System.out.println("result:"+11+1);
  System.out.println("result:"+"12345".valueOf(54321));
  double d = -4.4999999;
  System.out.println(Math.ceil(d));//不小于参数的最小整数值.
  System.out.println(Math.floor(d));//不大于参数的最大整数值.
  System.out.println(Math.round(d));//四舍五入法最接近参数的int/long值.
  
 }
输出为:

result:111
result:54321
-4.0
-5.0
-4


public static void main(String[] args) {
  System.out.println("Hello World!");
  float x = (float) 0.0;
  float y = (float) -1.0;
  double angle = Math.toDegrees(Math.atan(x / y));
  System.out.println("angle: " + calcAngle(1, 1));
  System.out.println("angle: " + calcAngle(1, -1));
  System.out.println("angle: " + calcAngle(-1, -1));
  System.out.println("angle: " + calcAngle(-1, 1));
  }


public
static float calcAngle(float x, float y) { float angle = (float) 0.0; angle = (float) Math.toDegrees(Math.atan(x / y)); if (x < 0) { if (y > 0) {  angle = angle + 360; } else {   angle = angle + 180;   } } else {   if (y < 0) {     angle = angle + 180;   } } return angle; } 输出: Hello World! angle: 45.0 angle: 135.0 angle: 225.0 angle: 315.0

 

posted on 2015-05-20 14:49  wi100sh  阅读(1524)  评论(0编辑  收藏  举报

导航