java double类型转换为度分秒

java double类型转换为度分秒

java double类型转换为度分秒形式,这种常用于经纬度中,别的不多说直接上代码

   public static String dblToLocation(double data) {
    
    
        StringBuffer result = new StringBuffer();
        //得到度
        int du = (int) data;
        result = result.append(String.valueOf(du) + "°");
        //得到分
        double du1 = data - du;
        int min = (int) (du1 * 60);
        result = result.append(String.valueOf(min) + "′");
        //得到秒
        double min1 = du1 * 60 - min;
        int sec = (int) (min1 * 60);
        result = result.append(String.valueOf(sec) + "″");
        return result.toString();
    }

个人记录

 /**
     * 时间: 2021-9-1
     * 10进制 转 弧度 转度 转 角度
     *
     * @param jz10 10进制数
     */
    public static void GiXi(double jz10) {
    
    

        double width = 8408850;//10进制

        System.out.println( "10进制:" + width );

        //计算弧度
        double s = ( double ) (Math.sin( width / 10000000 * 3.141592653589793d / 180 ) * 900);

        System.out.println( "弧度:" + s );
        //弧度 转 度。
        double data = Math.toDegrees( s );

        System.out.println( "度:" + data );

        StringBuffer result = new StringBuffer();
        //得到度
        int du = ( int ) data;
        result = result.append( String.valueOf( du ) + "°" );
        //得到分
        double du1 = data - du;
        int min = ( int ) (du1 * 60);
        result = result.append( String.valueOf( min ) + "′" );
        //得到秒
        double min1 = du1 * 60 - min;
        int sec = ( int ) (min1 * 60);
        result = result.append( String.valueOf( sec ) + "″" );
        System.out.println( "角度:" + result.toString() );

        // 度 转 弧度。
        double toRadians = Math.toRadians( data );
        System.out.println( "弧度。:" + toRadians );

        //转10进制
        double zz = ( double ) (Math.asin( toRadians / 900 ) * 10000000 / 3.141592653589793d * 180);

        //常用四舍五入
        zz = Math.round( zz );
        System.out.println( "十进制数:" + zz );
 		//double jiaodu = b * 180.0f / Math.PI;//弧度转角度
 		//double hudu = strdouble * Math.PI / 180.0f;//角度转弧度
    }  

猜你喜欢

转载自blog.csdn.net/ZQ200720/article/details/120043831