同意Squall1009(钰枫)(向程序员们靠拢)已经说的很详细了!

解决方案 »

  1.   

    同意Squall1009(钰枫)(向程序员们靠拢)已经说的很详细了!楼主应该可以写出程序了吧!如果这样也不行,你就转行算了.多多向高手们学习.帮你顶一顶.
      

  2.   

    按照“Squall1009(钰枫)(向程序员们靠拢)”的思路写的:public class Conversion {    public static double conversion(double init){
         return init*60;
        }
       
        public static void main(String[] args) {
        
            double init = 120.73;
            System.out.println("转换前"+init+"度");
            
            double fen = conversion(init - (int)init);
            double miao = conversion(fen-(int)fen);
            System.out.println("转换后"+(int)init+"度"+(int)fen+"分"+(int)miao+"秒");
        }
    }
      

  3.   

    我晕,这种问题也能上csdn,楼主你懒得也太厉害了吧
      

  4.   

    以下使我写的程序:::
    import java.io.*;
    import java.lang.Math ;
    import java.lang.Double ;
    import java.util.StringTokenizer;
    public class Deg { 
      public String ldegree,sxinteg ,decim,dufenmiao;
     
      public  String Deg(String degree){
    if ( degree ==null){
    System.out.println("请输入一个有效的数字字符串");
        return null;
    }
    this.ldegree =  degree ;
              StringTokenizer st = new StringTokenizer(ldegree,".");
              sxinteg = st.nextToken();
              double dinteg ;
              //判断是否为有效字符
              try{ dinteg=Double.parseDouble(sxinteg); }
              catch(NumberFormatException ehr){
                          System.err.println("Unable to parse: "+sxinteg);
                          return null;}
          
              if (st.hasMoreTokens()){
                      decim = st.nextToken();
                 }
              else { dufenmiao=sxinteg;
                      System.out.println(dufenmiao);
                  return dufenmiao ;}
              // 取得整数度
             decim="0."+decim;
             double xint,xfen,xmiao;
             try{xfen=Double.parseDouble(decim); }
             ////判断是否为有效字符
             catch(NumberFormatException ehr){
                    System.err.println("Unable to parse: "+decim);
                     return null;}
             xint = xfen*60;
              String sxfen=Double.toString(xint);
              //取得“分“
              String sfen,smiao;
              StringTokenizer st2 = new StringTokenizer(sxfen,".");
              sfen= st2.nextToken();
              smiao= st2.nextToken();
               if (smiao == null||smiao=="0" ){return sxinteg+"."+sfen ;}
               smiao="0."+smiao;
               double dmiao=  Double.parseDouble(smiao);
               dmiao=Math.round(dmiao*60.0);
               String sxmiao ;
               sxmiao=Double.toString(dmiao);
             // 取得“秒“
              sxfen=sxfen.substring(0,2);
              sxmiao=sxmiao.substring(0,2);
              dufenmiao= sxinteg +"."+sfen+"`"+sxmiao+"``";
              System.out.println(dufenmiao);
              return dufenmiao;
          }
       static public void main(String[] args) {
    String name = args[0]; 
            Deg con =new Deg();
            con.Deg(name);
    }

      

  5.   

    以下是我老板程序,大家看看那个好???
    public class ParserDll{
      /**
       * @param  String 要转换的字符串 
       * @return String 返回度°分′秒″
       */
      public String getCoordinate(String param){
        //System.out.println("param="+param);
        if (param==null || !checkNum(param)){
          System.out.println("参数为空或不是有效的数字字符串!");
          return null;
        }
        String degree=null,minute=null;
        String[] store=null;
        if(param.indexOf(".")>=0){
          store=param.split("\\.");
        }else{
          store=new String[1];
          store[0]=param;
        }
        if (store.length ==2){
          minute=getMinute(store[1]);
          if(minute!=null){
            degree=store[0]+"°"+minute;
          }else{
            degree=store[0]+"°";
          }
        }else{
          degree=store[0]+"°";
        }
        System.out.println(degree);
        return  degree;
      }
      /**
       *给定字符获得分的信息
       * @param min String
       * @return String
       */
      private String getMinute(String min){
        if (min==null){
          return null;
        }
        String temp=null;
        String mins=null,secs=null;
        float fmin=Float.parseFloat("0."+min)*60;
        String[] store=null;
        if (fmin>0){
          temp=Float.toString(fmin);
          if (temp.indexOf(".")>=0){
            store=temp.split("\\.");
            if (store.length ==2)
              secs=getSecond(store[1]);
          }else{
            store=new String[1];
            store[0]=temp;
          }
          mins=store[0]+"′";
        }
        if (secs!=null){
          temp=mins+secs;
        }else{
          temp=mins;
        }
        return temp;
      }
      /**
       * 给定字符串获得秒的信息
       * @param sec
       * @return
       */
      private String getSecond(String sec){
        if (sec==null){
          return null;
        }
        float fsec=Float.parseFloat("0."+sec)*60;
        int second=Math.round(fsec);
        String temp=null;
        if (second >0){
          temp=Integer.toString(second)+"″";
        }
        return temp;
      }
      /**
       * 检测输入的字符串是否有效
       * @param parm String 
       * @return boolean
       */
      private boolean checkNum(String parm){
        String numbers="0123456789.";
        int dot=0;
        //判断是否包含dot char
        char chars;
        for(int i=0;i<parm.length();i++){
          chars=parm.charAt(i);
          if(numbers.indexOf(chars)==-1){
            return false;
          }else if(chars=='.'){
            ++dot;
            if (dot>1){
              return false;
            }
          }
        }
        return true;
      }
      public static void main(String[] args) {
                  /*  String name = args[0]; 
            ParserDll con =new ParserDll();
            con.getCoordinate(name);*/
      }
    }