Java 求1-100以內(nèi)的所有素?cái)?shù),判斷一個(gè)數(shù)是不是素?cái)?shù)

質(zhì)數(shù)(prime number)又稱素?cái)?shù),有無限個(gè)。

質(zhì)數(shù)定義為在大于1的自然數(shù)中,除了1和它本身以外不再有其他因數(shù)的數(shù)稱為質(zhì)數(shù)。

小師弟問了我個(gè)這么個(gè)聯(lián)系題,雖然看似簡單,但是,大家都覺得簡單的東西,沒必要分享的話,那初學(xué)者,不是很痛苦嗎?

所以,我就給小師弟示范了一下。方便初學(xué)者,看看怎么寫代碼。

代碼內(nèi)部的細(xì)節(jié)(都是針對(duì)沒開始工作,或者剛剛工作的哥們):

1,模塊化思想。

先拆分需求,本來讓你求1-100以內(nèi)的素?cái)?shù),你不能上來就干,先拆分先考慮怎么確定一個(gè)數(shù)是不是素?cái)?shù),然后再復(fù)用到所有。

不能把方法堆到一起,不然怎么復(fù)用代碼。

2,注意注釋。

就算是自己的測試代碼,你好歹也寫個(gè)注釋,這樣即使過了三個(gè)月,再看代碼,也是分分鐘就能明白。不要覺得簡單,就懶得注釋

就算參數(shù)的注釋省略了,但是你這個(gè)方法的作用還是得說明一下。

好像聽說過:

寫的好的代碼,三個(gè)月后,回頭看,還能看懂,還知道是自己寫的,而不是,哇,這是我寫的代碼嗎?。。。?/p>

3,注意參數(shù)命名。

從類名到方法名,再到變量名,都不能隨意取名,叫個(gè)a,b,c,d,啥的,太隨意了,老師講課這么干,為了省事,少敲幾下鍵盤。

但是,新手們,還是從最基礎(chǔ)的地方做起吧,這樣你出來到項(xiàng)目上,就不會(huì)取一些笑掉大牙的命名啦。

關(guān)于這個(gè)命名,不要嫌棄他長,重點(diǎn)是意思清楚明白。見名知意。是最好的。

4,代碼格式化。

一些新人,包括老師,以及一些工作了些年的從業(yè)人員,他們可能就沒有這個(gè)格式化代碼的習(xí)慣。

只要你養(yǎng)成習(xí)慣了,這個(gè)就不用別人說,你自己寫完就會(huì)format一下的。而且,這么一整,你的代碼看著也是干凈整潔。

看著就舒爽。

下面看代碼吧:

package com.lxk.test;

import java.util.ArrayList;

import java.util.List;

/**

* 求1-100的素?cái)?shù)測試

* <p>

* Created by lxk on 2017/3/2

*/

public class PrimeNumberTest {

public static void main(String[] args) {

int n = 100;

System.out.println(getPrimeNumberToN(n));

}

/**

* 得到1到n之間的素?cái)?shù),存到一個(gè)ArrayList集合

*/

private static List<Integer> getPrimeNumberToN(int n) {

List<Integer> result = new ArrayList<>();

for (int i = 1; i < n + 1; i++) {

if (numberIsPrime(i)) {

result.add(i);

}

}

return result;

}

/**

* 判斷一個(gè)數(shù)是不是素?cái)?shù):只能被1和本身整除

* <p>

* 說明:從2開始除,不需要到n,也就是循環(huán)條件是 < n 就可以,這之間只要被整除了,那么他就不是素?cái)?shù)了

*/

private static boolean numberIsPrime(int n) {

for (int i = 2; i < n; i++) {

if (n % i == 0) {

return false;

}

}

return true;

}

}

執(zhí)行結(jié)果圖:

一道小小的題目,濕胸我總結(jié)這么多,是不是太啰嗦了。

當(dāng)然了,這都是一些些小的建議。

不積跬步,無以至千里啊。百層高臺(tái)起于壘土的嘛。這道理都簡單,但是實(shí)現(xiàn)卻不易。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容