今天看到一道编程题,计算当前时间时针与分针之间的夹角,想了一下大概写了一下,先实现功能。
package test;import java.text.SimpleDateFormat;import java.util.Date;/** * @Author : chenlei4616@163.com * @Date : 2019/3/28 9:23 * @Version : 1.0 * @Description : TODO */public class CalculateTimekeeperIncludedAngle { public static void main(String[] args) { System.out.println("计算当前事件时针与分针之间的夹角"); //获取当前时间按照小时-分钟的格式 SimpleDateFormat sdf = new SimpleDateFormat("hh:mm"); String format = sdf.format(new Date()); System.out.println("当前时间是:"+format); String[] split = format.toString().split(":"); //先计算分针与12点之间的度数 float i = Float.valueOf(split[1]) / 60; float minuteHandAngle = i * 360; System.out.println("分针与12点之间的夹角是:" + minuteHandAngle+"度"); //计算时针与12点之间的夹角 float timeHandAngle = Float.valueOf(split[0]) * 30; timeHandAngle += (Float.valueOf(split[1])/60)*30; System.out.println("时针与12点之间的夹角是:" + timeHandAngle + "度"); float angle = timeHandAngle>minuteHandAngle?timeHandAngle-minuteHandAngle:minuteHandAngle-timeHandAngle; System.out.println("时针与分针之间的夹角是:"+angle+"度"); }}打印的结果: