关于使用java将一定范围内数字筛选输出的编程思想
来源:互联网 发布:淘宝 买家秀 大尺度 编辑:程序博客网 时间:2024/06/08 00:06
曾经看过一篇文章,里面讲的是关于JAVA编程思想的问题,其中提到过的一句话让我印象深刻:一个主方法里除了实例化对象和调用方法之外的代码不会超过四行。当然,这是一个比较夸张的比喻 ,但在实际的编程中,如果能写一个工具类的话,是不会往主方法里放入太多的东西的,在这里将阐述的是我对于简单JAVA问题中筛选一定范围内某种数字的理解,在这里我以输出1000以内的完数(一个正整数恰好等于除它本身外的所有因子之和)进行举例。首先,不管是筛选什么样的数字,应当将数字和范围规定分开来看,即构造一个工具类,其中含有一个成员方法去辨别数字,比如在完数输出这一题中,将判定某一个数是否为完数作为一个成员方法,而更换数字则放在主方法里,然后开始在工具类里创建方法判断单个数字是否符合条件,最后在主方法里规定范围,代码如下:public class Tools {void judgePerfectNumber(int a){//判断一个数字是否为完数int sum = 0;//因子的和初始化int [] arr=new int[100];int s = 0;for(int i = 1;i<a;i++){if(a%i==0){arr[s]=i;s++;}}//得到这个数字的所有因子for(int r=0;r<100;r++){sum = sum+arr[r];}//求出因子的和if(sum == a){System.out.print(a+"\t");}//判断是否为完数}}public class Main {public static void main(String[] args) {Tools per = new Tools();System.out.println("1000以内所有的“完数”为:");for(int i = 1;i<1000;i++){per.judgePerfectNumber(i);}}}如果你愿意的话,你甚至可以将范围也做成一个方法放入工具类Tools里,由用户输入范围,范围的函数如下。void range(){Scanner scan = new Scanner(System.in);int max = scan.nextInt();int min = scan.nextInt();//用户输入范围for(int i = min;i<max;i++){judgePerfectNumber(i);}//使用时请自行加入提示将这些复杂的算法放入工具类中,其目的在于防止主方法过于复杂,不易读懂。以上便是我从简单筛选中做出的总结。
阅读全文
0 0
- 关于使用java将一定范围内数字筛选输出的编程思想
- C 语言:打印一定范围内的数字
- 统计一定范围内的数字出现次数
- 获取一定范围内的随机数字
- 获取一定范围内的随机数字
- OJ 2691: 输出一定范围内的素数
- 将鼠标锁定在一定的范围内
- 用java求一定范围内的质数
- Java生成一定范围内的浮点数
- 输出一定范围内的奇偶数(foreach/section/if_elseif_else)
- 利用Smarty模板技术设计一定范围内奇偶数的输出
- 第20周-输出一定范围内的素数
- 求一定范围内质数的个数 并换行输出
- 素数筛选法输出指定范围内的所有素数
- 输出指定范围内的素数并验证一定范围内的歌德巴赫猜想
- 1.学习1: 埃拉托色尼筛选法(求一定范围内的质数)
- matlab :产生一定尺寸一定范围内的随机矩阵,并将小于阈值的数置零
- java中取一定范围内的质数的方式
- linux 基本常用命令
- Java并发编程:Callable、Future和FutureTask
- java练习题(1)、(2)、(3)
- 双子星服务器 插PCI-E光纤网卡遇到的一些问题
- 浅谈全局变量与局部变量的使用方式
- 关于使用java将一定范围内数字筛选输出的编程思想
- 【C++的探索路4】面向对象编程与类的基本定义
- try,catch(异常作业)用string实现
- 无根树转有根数
- System eth0"
- EA&UML日拱一卒-多任务编程超入门-(3)线程协作的理想和现实
- 破解手机捕鱼游戏软件
- 关于myeclipse2017的java web项目出现404错误的问题
- arm-linux 编译器与连接器与符号地址