java代碼1000的簡單介紹

用java代碼求1000之內(nèi)的所有完全數(shù)

import java.util.ArrayList;

創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站制作、網(wǎng)站設(shè)計、獻縣網(wǎng)絡(luò)推廣、小程序開發(fā)、獻縣網(wǎng)絡(luò)營銷、獻縣企業(yè)策劃、獻縣品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供獻縣建站搭建服務(wù),24小時服務(wù)熱線:18982081108,官方網(wǎng)址:www.muchs.cn

public class Testa {

public static void main( String[] args ) {

ArrayListInteger arrayList = new ArrayListInteger();

for ( int i = 1; i = 1000; i++ ) {

int k=0;

for(int j=1;ji;j++){

if(i%j==0){

k+=j;

}

}

if(k==i){

arrayList.add( i );

}

}

System.out.println(arrayList);

}

}

用java編寫一個程序:輸出1-1000;輸出格式為0001,0002.....1000

代碼如下:

public static void main(String[] args)

{

String str = "";

for(int i = 1;i 10000;i++)

{

str = String.format("%04d", i);

System.out.println(str);

}

}

Java是一門面向?qū)ο缶幊陶Z言,不僅吸收了C++語言的各種優(yōu)點,還摒棄了C++里難以理解的多繼承、指針等概念,因此Java語言具有功能強大和簡單易用兩個特征。

Java語言作為靜態(tài)面向?qū)ο缶幊陶Z言的代表,極好地實現(xiàn)了面向?qū)ο罄碚?,允許程序員以優(yōu)雅的思維方式進行復(fù)雜的編程 。

用java代碼將1到1000的奇數(shù)打出來

這是一個java基礎(chǔ)題

雖然基礎(chǔ),但是我們練習(xí)的時候,可以加以拓展和優(yōu)化,熟悉for循環(huán) while循環(huán), 了解運算符優(yōu)先級, ? 加強對業(yè)務(wù)邏輯的分析處理,強化寫代碼的能力。

首先代碼的寫法是多樣的

1.根據(jù)奇數(shù)定義 : ? 不能被2所整除的數(shù)是奇數(shù)

根據(jù)這個定義,我們可以寫一個最基礎(chǔ)的版本

public?class?Odd1?{

public?static?void?main(String[]?args)?{

for?(int?i?=?1;?i??1000;?i++)?{//1~1000之間?循環(huán)1000次

if(i%2!=0){??//不能被2整除的

System.out.println(i);//就是奇數(shù),打印出來

}

}

}

}

分析下,這個版本,我們發(fā)現(xiàn)這個版本性能可能比較低

因為要循環(huán)1000次,并且每次還要進行一次求余運算。所以性能低。

有沒有改進的空間?

2. ? 我們繼續(xù)對奇數(shù)進行了解(對業(yè)務(wù)進行熟悉)。還有改進的空間

然后發(fā)現(xiàn):?偶數(shù)可用2k表示,奇數(shù)可用2k+1表示,這里k是整數(shù)。

代碼修改如下

public?class?Odd2?{

public?static?void?main(String[]?args)?{

for?(int?k?=?0;?k??500;?k++)?{//循環(huán)減少為500次

System.out.println(k*2+1);//按照奇數(shù)公式進行輸出

}

}

}

3. ?繼續(xù)優(yōu)化. ? java中乘法是性能消耗比較大的運算, ?如果可以使用移位操作 , ?那么使用移位操作代替乘法

因為使用移位的操作將會更快和更有效

public?class?Odd3?{

public?static?void?main(String[]?args)?{

for?(int?k?=?0;?k??500;?k++)?{

System.out.println((k1)+1);//移位操的優(yōu)先級低于四則運算,?所以用括號括起來優(yōu)先計算?,?左移1位.相當(dāng)于*2

}

}

}

4. ?查看奇數(shù)的特性 ?, 來探索其他寫法

奇數(shù)1、3、5、7、9、11、13、15、17、19、21、23、25、27、29、31、33.........

每個奇數(shù)的間隔是2, 第一個奇數(shù)是1

代碼如下

public?class?Odd4?{

public?static?void?main(String[]?args)?{

for?(int?i?=?1;?i??1000;?i+=2)?{//從1開始,每次自加2

System.out.println(i);

}

}

}

5. 除開for循環(huán), ?while循環(huán)也可以寫.

public?class?Odd5?{

public?static?void?main(String[]?args)?{

int?i?=?1;

while?(true)?{

if?(i?=?1000)?{

break;//跳出循環(huán)

}

System.out.println(i);

i?=?i?+?2;

}

}

}

6 ?再次修改,如果業(yè)務(wù)邏輯 從1~1000修改成其他數(shù)字了, 那么在循環(huán)體中修改不是特別合適

所以需要定義成2個變量. 來記錄開始的數(shù)字和結(jié)束的數(shù)字. ?并且如果輸出太多的數(shù)字, 不方便查看, ?那么需要美化下輸出的格式

public?class?Odd6?{

public?static?void?main(String[]?args)?{

int?start?=?1;?//開始的數(shù)

int?end?=?1000;?//結(jié)束的數(shù)

int?index?=0;//用于換行處理的計算

for?(int?n?=?start;?n??end;?n?+=?2)?{

index++;

System.out.print(n+"\t");//??\t表示制表符??,這樣數(shù)字看起來排列比較整齊

if(index%10==0){//每10個數(shù)字,換一行

System.out.println();

}

}

}

}

分享文章:java代碼1000的簡單介紹
標(biāo)題鏈接:http://www.muchs.cn/article20/docsejo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機響應(yīng)式網(wǎng)站、網(wǎng)站排名網(wǎng)站改版、品牌網(wǎng)站制作網(wǎng)站設(shè)計公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)