Java面试问题之六十一_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > Java面试问题之六十一

Java面试问题之六十一

 2011/12/1 8:39:16  YuHuang.Neil  http://yuhuang-neil.iteye.com  我要评论(0)
  • 摘要:问题:请你编写一个方法来判断一个整数是否是一个守形数,如果是输出"YES",否则输出"NO"。要求尽可能地简单和快速。答:代码如下:importjava.lang.Math;publicclassKeepFormatNumber{publicstaticStringdoJudge(intn){intsn=(int)Math.pow(n,2);intlen=countLength(n);inttimes=1;for(inti=0;i<len;++i){times*=10;}if((sn-
  • 标签:面试 Java面试 Java 问题 面试问题
问题:请你编写一个方法来判断一个整数是否是一个守形数,如果是输出"YES",否则输出"NO"。要求尽可能地简单和快速。

答:代码如下:

import java.lang.Math;

public class KeepFormatNumber {

        public static String doJudge(int n) {
                int sn =(int) Math.pow(n,2);
                int len = countLength(n);
                int times=1;

                for(int i=0;i<len;++i){
                        times*=10;
                }

                if((sn-(sn/times)*times)==n) return "YES";
                else return "NO";
        }

        private static int countLength(int n) {
                int len=0;
                while(n!=0){
                        n/=10;
                        ++len;
                }

                return len;
        }

        public static void main(String[] args){
                int n1 = 25;
                int n2 = 125;
                System.out.println("n1= "+n1+" result : "+KeepFormatNumber.doJudge(n1));
                System.out.println("n2= "+n2+" result : "+KeepFormatNumber.doJudge(n2));
        }

}




代码运行结果:
Lab-Computer-0db2f6:JavaExercises labuser$ javac KeepFormatNumber.java
Lab-Computer-0db2f6:JavaExercises labuser$ java KeepFormatNumber
n1= 25 result : YES
n2= 125 result : NO
Lab-Computer-0db2f6:JavaExercises labuser$




上一篇: JDOM解析XML 下一篇: 设计模式生活实例
发表评论
用户名: 匿名