OOP02第2章Java程序設(shè)計(jì)語(yǔ)言概述_第1頁(yè)
OOP02第2章Java程序設(shè)計(jì)語(yǔ)言概述_第2頁(yè)
OOP02第2章Java程序設(shè)計(jì)語(yǔ)言概述_第3頁(yè)
OOP02第2章Java程序設(shè)計(jì)語(yǔ)言概述_第4頁(yè)
OOP02第2章Java程序設(shè)計(jì)語(yǔ)言概述_第5頁(yè)
已閱讀5頁(yè),還剩66頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第2章Java程序設(shè)計(jì)語(yǔ)言概述提綱2.1Java程序設(shè)計(jì)語(yǔ)言的發(fā)展2.2Java程序設(shè)計(jì)語(yǔ)言的基本特征2.3Java程序的運(yùn)行環(huán)境2.4Java程序的基本結(jié)構(gòu)2.5Java程序的基本類型2.6標(biāo)識(shí)符、關(guān)鍵字、分隔符、常量、變量2.7Java程序的基本輸入輸出2.8運(yùn)算符與表達(dá)式2.9流程控制語(yǔ)句2.10數(shù)組,遍歷數(shù)組的for循環(huán)2.11二維數(shù)組2.12字符串常量String2.1Java程序設(shè)計(jì)語(yǔ)言的發(fā)展1995年5月發(fā)布Java和HotJava瀏覽器1995年9月宣布將提供Java開(kāi)發(fā)工具1995年12月發(fā)布JavaScript1996年推出JDK1.01996年頒布JavaBeans規(guī)范1997年推出JDK1.1.2(稱為java2)2004年推出JDK5.0(將jdk1.5改名為jdk5.0),是自JDK1.1以來(lái)最大的改進(jìn),添加了泛型2006年發(fā)布JDK6,擴(kuò)展類庫(kù),提高性能2011年發(fā)布JDK7,支持動(dòng)態(tài)類型語(yǔ)言,可在JVM上執(zhí)行JavaScript等腳本語(yǔ)言2014年推出JDK8,支持lambda表達(dá)式,函數(shù)式編程,JavaFX2.2Java程序設(shè)計(jì)語(yǔ)言的基本特征應(yīng)用最廣泛簡(jiǎn)潔而功能強(qiáng)大面向?qū)ο蠓植际浇研越Y(jié)構(gòu)中立(平臺(tái)無(wú)關(guān))Android編程安全性可移植性解釋執(zhí)行對(duì)Internet(網(wǎng)絡(luò))有良好的支持多線程動(dòng)態(tài)性掌握J(rèn)ava編程,找高薪工作!2.3Java程序的運(yùn)行環(huán)境編譯型源程序字節(jié)碼程序Java源程序可執(zhí)行程序exe裸機(jī)操作系統(tǒng)解釋器編譯連接編譯運(yùn)行解釋運(yùn)行.java.classJava是解釋型的高級(jí)編程語(yǔ)言Java虛擬機(jī)運(yùn)行Java程序的基本過(guò)程1、利用編輯器編寫Java源程序源文件名:主類名.java2、利用編譯器將源程序編譯成字節(jié)碼字節(jié)碼文件名:源文件名.class3、利用虛擬機(jī)(解釋器)運(yùn)行工作過(guò)程:載入、代碼校驗(yàn)、解釋執(zhí)行常用的Java開(kāi)發(fā)環(huán)境從網(wǎng)絡(luò)上直接下載JDK(JavaDeveloperKit),并利用命令行方式操作javac(編譯器);java(解釋器)Java集成開(kāi)發(fā)環(huán)境(IDE)NetBeans,Sun公司開(kāi)發(fā),免費(fèi),功能齊全Eclipse(推薦,IBM提供,開(kāi)源平臺(tái),支持者眾多)JBuilder,VisualJ++已成歷史軟件下載地址:5/lxy開(kāi)發(fā)工具安裝之一JDK的安裝與環(huán)境設(shè)計(jì)自/downloads/下載最新版本的JavaSE(JDK)7運(yùn)行安裝程序,安裝到(C:\jdk1.7.0)設(shè)置運(yùn)行環(huán)境參數(shù):進(jìn)入我的電腦\屬性\高級(jí)\環(huán)境變量\系統(tǒng)變量添加變量classpath,值為:”C:\jdk1.7.0\lib”向path變量值末尾添加”;C:\jdk1.7.0\bin;”開(kāi)發(fā)工具安裝之二下載安裝NetBeans7.3完全版(all)2.4Java程序的基本結(jié)構(gòu)Java程序的形態(tài):Application應(yīng)用程序:它是一個(gè)完整的應(yīng)用程序,可以利用Java虛擬機(jī)獨(dú)立地在本機(jī)運(yùn)行。

Servlet(服務(wù)器小程序):在遠(yuǎn)程的web服務(wù)器中運(yùn)行,可通過(guò)web協(xié)議(即http方式訪問(wèn)),它可以動(dòng)態(tài)生成一個(gè)網(wǎng)頁(yè)。EJB(EnterpriseJavaBean):運(yùn)行在應(yīng)用服務(wù)器中,可被servlet或其它應(yīng)用程序調(diào)用。運(yùn)行在手機(jī)中,Android,JME,。。。Applet(應(yīng)用小程序,已退出歷史舞臺(tái))Application應(yīng)用程序舉例importjava.io.*;publicclassMyFirstJavaProgram{publicstaticvoidmain(String[]args){System.out.println(“ThisisthefirstJavaApplication”);}}2.5Java程序的基本類型數(shù)據(jù)類型決定了參與操作的變量、常量和表達(dá)式的取值類別、取值范圍以及能夠?qū)嵤┑牟僮餍袨椤ava是強(qiáng)類型語(yǔ)言,所有變量和表達(dá)式,在編譯時(shí)進(jìn)行數(shù)據(jù)類型相容性的檢查。Java的基本數(shù)據(jù)類型布爾類型:boolean字符類型:char整數(shù)類型:byte、short、int、long浮點(diǎn)類型:float、double1.boolean與C不同?。?!只有“true”和“false”兩個(gè)取值,分別代表“真”和“假”。特點(diǎn):不能夠與任何其他類型進(jìn)行相互的類型轉(zhuǎn)換操作。2.charJava語(yǔ)言規(guī)定,字符采用Unicode編碼,每個(gè)字符占用兩個(gè)字節(jié)。ASCII字符集是Unicode字符集的一個(gè)子集,并且在這兩個(gè)字符集中,前128個(gè)編碼所對(duì)應(yīng)的字符完全相同,只是每個(gè)字符占用的二進(jìn)制位數(shù)不同。3.byte、short、int、long上面4種數(shù)據(jù)類型都屬于整型數(shù)值類型。byte1個(gè)字節(jié)short2個(gè)字節(jié)int4個(gè)字節(jié)long8個(gè)字節(jié)與C的區(qū)別:占用字節(jié)數(shù)固定,無(wú)unsigned類型4.float、doublefloat單精度32位double雙精度64位Java語(yǔ)言中的浮點(diǎn)數(shù)值表示遵循IEEE754標(biāo)準(zhǔn)。它不僅包括正零、負(fù)零、正無(wú)窮大、負(fù)無(wú)窮大和一個(gè)特別的值NaN。上溢:無(wú)窮大,正無(wú)窮大/負(fù)無(wú)窮大下溢:0,正零/負(fù)零0/0,對(duì)負(fù)數(shù)開(kāi)方:NaN見(jiàn)課本p41:例2-22.6標(biāo)識(shí)符、關(guān)鍵字、分隔符、常量、變量【標(biāo)識(shí)符】

Java的標(biāo)識(shí)符由字母、數(shù)字、_和$組成,長(zhǎng)度不限。第一個(gè)字符必須為字母、(_)或($)符號(hào)。標(biāo)識(shí)符區(qū)分大小寫。其中字母可以是大寫或小寫的英文字母,數(shù)字為0到9。標(biāo)識(shí)符用來(lái)命名變量、符號(hào)常量、數(shù)組、方法、類、對(duì)象、接口、包等。如:MyFirstClass,Student,name,age,myObject等。要點(diǎn):標(biāo)識(shí)符嚴(yán)格區(qū)分大小寫用戶自定義標(biāo)識(shí)符不可與Java語(yǔ)言關(guān)鍵字和常量相同Java標(biāo)識(shí)符命名規(guī)范:類型規(guī)范示例包(package)用小寫字母java.io類/接口名(class/Interface)駝峰命名法(Camel-Case):用名詞或名詞詞組構(gòu)成,每個(gè)單詞首字母大寫MyFirstJavaStudent方法/變量名駝峰命名法,用名詞或名詞詞組構(gòu)成,除首字母外,每個(gè)單詞首字母大寫myFirstJavastudent常量每個(gè)字母都大寫,單詞間用下劃線(_)連接Math.PIMIN_WIDTH基本原則:見(jiàn)名知義【關(guān)鍵字】又稱保留字,是Java語(yǔ)言規(guī)定了特定含義的標(biāo)識(shí)符。用戶只能按照系統(tǒng)規(guī)定的方式使用,不能自行定義。關(guān)鍵字一律用小寫字母表示。Java中的關(guān)鍵字有50個(gè),按用途劃分為:數(shù)據(jù)類型、語(yǔ)句、修飾、方法、類、接口、包,并保留了const和goto。見(jiàn)P43關(guān)鍵字表【分隔符】分隔符被用來(lái)區(qū)分Java源程序中的基本成分(標(biāo)識(shí)符、關(guān)鍵字、運(yùn)算符和常量),分隔符分為注釋、空白符和普通分隔符三種類別。注釋是為源程序增加必要的解釋說(shuō)明的內(nèi)容,其目的是提高程序的可讀性,書寫注釋是編寫程序的良好習(xí)慣。Java中有三種形式的注釋:

/*注釋部分*//**注釋部分*/ //注釋部分第二種分隔符是空白符,包括空格、回車符、換行符和制表符(Tab鍵)等。各種Java基本成分之間的多個(gè)空白符與一個(gè)空白符的作用相同。第三種是普通分隔符,具有確定的語(yǔ)法含義,必須按照特定的語(yǔ)法規(guī)定使用。它包括四種分隔符:{}

大括號(hào),用來(lái)定義類體、方法體、復(fù)合語(yǔ)句或?qū)?shù)組進(jìn)行初始化。

;分號(hào),是語(yǔ)句結(jié)束的標(biāo)志。

,逗號(hào),分隔方法的參數(shù)或聲明的變量序列。

:冒號(hào),用于分隔語(yǔ)句標(biāo)號(hào)?!境A俊空统A浚菏?、十六進(jìn)制實(shí)型常量:double、float字符常量:?jiǎn)我?hào)括起來(lái)布爾常量:true和false字符串常量:雙引號(hào)括起來(lái)符號(hào)常量在Java中,可以利用關(guān)鍵字final將一個(gè)變量定義為常量標(biāo)識(shí)符。

finaldoublePI=3.1415926;變量PI的值在作用域范圍內(nèi)只能被引用,不能被修改。packagejava.lang;importjava.util.Random;publicfinalclassMath{privateMath(){}publicstaticfinaldoubleE=2.7182818284590452354;

publicstaticfinaldoublePI=3.14159265358979323846;publicstaticnativedoublesin(doublea);publicstaticnativedoublecos(doublea);publicstaticnativedoubletan(doublea);publicstaticnativedoubleasin(doublea);publicstaticnativedoubleacos(doublea);publicstaticnativedoubleatan(doublea);publicstaticnativedoubleexp(doublea);publicstaticnativedoublelog(doublea);publicstaticnativedoublesqrt(doublea);publicstaticnativedoubleIEEEremainder(doublef1,doublef2);publicstaticnativedoubleceil(doublea);publicstaticnativedoublefloor(doublea);publicstaticnativedoublerint(doublea);Math類(importjava.lang)publicstaticnativedoubleatan2(doublea,doubleb);

publicstaticnativedoublepow(doublea,doubleb);publicstaticintround(floata)publicstaticlonground(doublea)privatestaticRandomrandomNumberGenerator;

publicstaticdoublerandom()//產(chǎn)生0~1.0之間的一個(gè)隨機(jī)數(shù)

publicstaticintabs(inta)publicstaticlongabs(longa)publicstaticfloatabs(floata)publicstaticdoubleabs(doublea)publicstaticintmax(inta,intb)publicstaticlongmax(longa,longb)publicstaticfloatmax(floata,floatb)publicstaticdoublemax(doublea,doubleb)publicstaticintmin(inta,intb)publicstaticlongmin(longa,longb)publicstaticfloatmin(floata,floatb)publicstaticdoublemin(doublea,doubleb)}【變量】在Java語(yǔ)言中,所有的變量必須先定義后使用。其格式為:數(shù)據(jù)類型標(biāo)識(shí)符1[=初值],[標(biāo)識(shí)符2...];如int

a,b,c=30;floatf1,f2;基本數(shù)據(jù)類型的變量在聲明時(shí)就為其分配內(nèi)存空間;其它類型(如數(shù)組、對(duì)象)需要用new為聲明的變量分配空間。變量的作用域在某個(gè)方法體中或參數(shù)表中聲明的變量只能在該方法體中使用;在某個(gè)語(yǔ)句塊中聲明的變量,只能在該語(yǔ)句塊中使用。在類中聲明的成員變量需要根據(jù)訪問(wèn)修飾符確定可訪問(wèn)者。2.7Java程序的基本輸入輸出Application應(yīng)用程序的輸入輸出字符界面:輸入:單個(gè)字符字符:利用System.in.read()對(duì)數(shù)據(jù)對(duì)象為單位的讀入:Scanner有next(),nextLine(),nextInt(),nextXXX()方法輸出:System.out.print()System.out.println()System.out.printf()格式化輸出importjava.util.Scanner;publicclassApplicationLineInOut{ publicstaticvoidmain(Stringargs[]){ Stringstr=""; System.out.print(“請(qǐng)輸入一行任意字符串:");

Scannersc=newScanner(System.in);//掃描標(biāo)準(zhǔn)輸入流

str=sc.nextLine();//讀取一行

System.out.println(“你輸入的字符串是:"+str); }}字符界面IO(讀入一行)importjava.util.Scanner;publicclassReadMultiInt{

publicstaticvoidmain(String[]args){intsum=0;System.out.println(“請(qǐng)輸入10個(gè)整數(shù):”);//輸入10個(gè)數(shù)

Scannersc=newScanner(System.in);

for(inti=0;i<10;i++){sum+=sc.nextInt();}System.out.println(“它們的和是:"+sum);}}字符界面IO(讀入多個(gè)整數(shù))格式化輸出Jdk5.0開(kāi)始引入與C語(yǔ)言類似的格式化輸出方法,用System.out.printf()實(shí)現(xiàn),如:…value=100.0/3;System.out.printf(“%10.2f”,value);….顯示結(jié)果將為:333.33其中的%10.2f為格式控制字符串,表示用10個(gè)字符寬度,小數(shù)點(diǎn)后2位的浮點(diǎn)數(shù)格式顯示變量value的值。其它格式見(jiàn)表2-5:符號(hào)d,x,o,f,e,s,c,b分別表示10進(jìn)制整數(shù)、16進(jìn)制整數(shù)、8進(jìn)制整數(shù)、10進(jìn)制小數(shù)、科學(xué)表示法,字符串、字符、布爾值2.8運(yùn)算符與表達(dá)式算術(shù)運(yùn)算:+、-、*、/、%、++、--邏輯運(yùn)算:&、|、!、^、&&、||關(guān)系運(yùn)算:==、!=、>、<、>=、<=位運(yùn)算:~、&、|、^、>>、<<、>>>其他運(yùn)算:?:、賦值運(yùn)算符、()、[]、new檢測(cè)某個(gè)對(duì)象是否屬于某個(gè)類

instanceof(對(duì)象)賦值操作中的類型轉(zhuǎn)換Java是強(qiáng)類型語(yǔ)言,因此,在進(jìn)行賦值操作時(shí)要檢查類型;當(dāng)將占位數(shù)少的類型賦值給占位數(shù)多的類型時(shí),Java自動(dòng)使用隱式類型轉(zhuǎn)換;當(dāng)將占位數(shù)多的類型賦值給占位數(shù)少的類型時(shí),需要由用戶使用顯式地強(qiáng)制進(jìn)行類型轉(zhuǎn)換。2.9流程控制語(yǔ)句表達(dá)式語(yǔ)句:表達(dá)式后加一個(gè)分號(hào)a+=a*6;a++;a+3;復(fù)合語(yǔ)句:包含在括號(hào)中的語(yǔ)句序列流程控制語(yǔ)句:順序結(jié)構(gòu)、分支結(jié)構(gòu)和循環(huán)結(jié)構(gòu)分支語(yǔ)句:if...else、switch循環(huán)語(yǔ)句:while、do...while、for轉(zhuǎn)移語(yǔ)句:break、continue、label返回語(yǔ)句:return《分支結(jié)構(gòu)》

if(布爾表達(dá)式)語(yǔ)句1;[else語(yǔ)句2;]switch(表達(dá)式){case常量1:語(yǔ)句塊1;

......case常量n:語(yǔ)句塊n;default:語(yǔ)句塊n+1;}循環(huán)結(jié)構(gòu)—while格式:

while(循環(huán)條件){循環(huán)體}含義:循環(huán)條件為一個(gè)布爾表達(dá)式,其值為true時(shí),重復(fù)執(zhí)行循環(huán)體。循環(huán)結(jié)構(gòu)—do格式:do{

循環(huán)體}while(循環(huán)條件);含義:重復(fù)執(zhí)行循環(huán)體,直到循環(huán)條件為false。循環(huán)結(jié)構(gòu)—for格式:for(表達(dá)式1;表達(dá)式2;表達(dá)式3)循環(huán)體;表達(dá)式1:循環(huán)初值表達(dá)式2:布爾型表達(dá)式,循環(huán)條件表達(dá)式3:循環(huán)增量表達(dá)式for循環(huán)示例問(wèn)題:輸入一個(gè)整數(shù)到變量n,求n!。定義函數(shù)nn!控制轉(zhuǎn)移語(yǔ)句break語(yǔ)句:使程序的流程從一個(gè)語(yǔ)句塊內(nèi)部轉(zhuǎn)移出去。通常在switch和循環(huán)語(yǔ)句中使用。continue語(yǔ)句:只能在循環(huán)語(yǔ)句中使用。其作用是終止當(dāng)前這一輪的循環(huán),直接進(jìn)入下一輪的循環(huán)。label:用于標(biāo)記位置breaklabel/continuelabel跳轉(zhuǎn)到label所示的層次,而不限于當(dāng)前層。break+label示例publicclassLabelTest{publicstaticvoidmain(Stringargs[]){booleant=true;first://第一個(gè)位置標(biāo)簽{second://第二個(gè)位置標(biāo)簽{third://第三個(gè)位置標(biāo)簽{System.out.println("Beforethebreak.");if(t){breaksecond;//breakoutofsecondblockSystem.out.println("Thiswon'texecute");}}System.out.println("Thiswon'texecute");}System.out.println("Thisisaftersecondblock.");}}}ContinueLabel示例//continue配合label來(lái)打印0到9的三角形乘法表:

publicclassContinueLabel{

publicstaticvoidmain(Stringargs[]){outer:for(inti=0;i<10;i++){for(intj=0;j<10;j++){if(j>i){System.out.println();continueouter;}System.out.print(""+(i*j));}}System.out.println();}}//思考與練習(xí):如何打印出更美觀有效的乘法表?2.10數(shù)組問(wèn)題:編寫一個(gè)程序,計(jì)算一個(gè)同學(xué)自己本學(xué)期各課程的平均積點(diǎn)。用C怎么實(shí)現(xiàn)?用Java在字符界面下如何實(shí)現(xiàn)?示例1:字符界面下計(jì)算平均積點(diǎn)要點(diǎn):1.定義數(shù)組,用于存放各課程成績(jī)。2.循環(huán)讀入各門課程成績(jī),存入數(shù)組中。3.計(jì)算平均成績(jī)。4.輸出結(jié)果:課程數(shù)量,平均積點(diǎn)2.10數(shù)組按照元素的組成分類,數(shù)組屬于復(fù)合數(shù)據(jù)類型,它是由類型相同的元素組成的有順序的數(shù)據(jù)集合。特點(diǎn):元素類型相同;元素有順序;所有元素共用一個(gè)名稱。要點(diǎn):區(qū)分?jǐn)?shù)組的聲明與數(shù)組的創(chuàng)建Java語(yǔ)言中的數(shù)組聲明格式:數(shù)組元素類型

數(shù)組名[];

數(shù)組元素類型[]

數(shù)組名;舉例:

intarrayInt[];doublearrayDouble[];String[]strs;Point[]ps;注意:按照變量的存儲(chǔ)方式上分類,Java語(yǔ)言中的數(shù)組屬于引用類型,因此在聲明數(shù)組引用時(shí)不能給出長(zhǎng)度。數(shù)組的創(chuàng)建聲明數(shù)組引用后,需要利用new運(yùn)算來(lái)為數(shù)組型變量定義長(zhǎng)度且分配內(nèi)存空間,我們將其稱之為創(chuàng)建數(shù)組。

arrayInts=newint[10];arrayDoubles=newdouble[1000];String[]strs=newString[10];Java規(guī)定,數(shù)組創(chuàng)建后系統(tǒng)自動(dòng)地為數(shù)組中的每個(gè)元素賦予初值。數(shù)組初值數(shù)組元素的默認(rèn)初值:整型:0實(shí)型:0.0f或0.0d字符:‘\0’類對(duì)象:nullintarrayInts[]={1,2,3,4,5,6,7};String[]strs={“C++”,“QBasic”,“Pascal”};另一種for循環(huán)for(var:collection)statement;for(intvalue:array){System.out.printf(“%4d”,value)}示例從鍵盤讀入若干門課程的成績(jī),用數(shù)組存儲(chǔ)。分別輸出最低成績(jī),最高成績(jī)和平均成績(jī)。問(wèn)題:Java的數(shù)組在使用前必須指定長(zhǎng)度,如果實(shí)現(xiàn)對(duì)任意門課程的處理?辦法:先提示用戶要輸入課程門數(shù),根據(jù)課程門數(shù)創(chuàng)建數(shù)組。一維數(shù)組的復(fù)制System.arraycopy()方法voidarraycopy(Objectsrc,intsrcPos,Objectdest,intdestPos,intlength);Arrays類Arrays是java提供的一個(gè)標(biāo)準(zhǔn)類,存放于java.util包中,它專門用于對(duì)數(shù)組進(jìn)行處理。常用方法包括:staticvoidsort(eType[]a),排序staticintbinarySearch(eType[]a,eTypev),查找staticvoidfill(eType[]a,eTypev),批量填充2.11二維數(shù)組問(wèn)題:編寫一個(gè)程序,計(jì)算全班同學(xué)的平均積點(diǎn),并排序輸出。用C怎么實(shí)現(xiàn)?用Java在字符界面下如何實(shí)現(xiàn)?用java在圖形用戶界面下實(shí)現(xiàn)?2.11二維數(shù)組二維數(shù)組是一個(gè)一維數(shù)組,它的每個(gè)元素是對(duì)一個(gè)維數(shù)組的引用,每個(gè)一維數(shù)組元素引用數(shù)組元素?cái)?shù)目可以不同??衫斫鉃橐粋€(gè)各行長(zhǎng)度不一定相同的二維表格。例:intarrD2[][];//聲明一個(gè)二維數(shù)組變量,arrD2=newint[10][];//創(chuàng)建一個(gè)有10個(gè)成員的二維數(shù)組實(shí)例.arrD2[0]=newint[5]; //創(chuàng)建第一行arrD2[1]=newint[6]; //創(chuàng)建第二行…arrD2[9]=newint[20]; //創(chuàng)建第10行楊輝三角形11112113311464115101051161520156117213535217118285670562881193684126126843691用數(shù)組int[][]data存放數(shù)據(jù)//遍歷每行r:=1~10//給第一列和第r列都賦值1data[r][0]=1;data[r][r]=1;//給r行第c列(c:=1~i-1)賦值,第r-1行的第c-1列+第r-1行的第c列data[r][c]=data[r-1][c-1]+data[r-1][c];publicclassYangHui{publicstaticvoidmain(Stringargs[]){

int[][]data;//聲明數(shù)組

data=newint[10][];

//為數(shù)組分配內(nèi)存

for(intr=0;r<10;r++)data[r]=newint[r+1];

//!!每行長(zhǎng)度不同

//給各個(gè)元素賦值

data[0][0]=1;for(intr=1;r<10;r++){//遍歷每行

data[r][0]=1;data[r][r]=1;//給第一列和最后一列賦值

for(intc=1;c<r;c++)//給第2列到第i-1列賦值

data[r][c]=data[r-1][c-1]+data[r-1][c];}//逐行輸出數(shù)組中的內(nèi)容

for(intr=0;r<10;r++){for(intc=0;c<=r;c++)System.out.print(data[r][c]+"");System.out.println();}}}利用二維數(shù)組構(gòu)造楊輝三角形前10行的內(nèi)容publicclassYangHuiNew{publicstaticvoidmain(Stringargs[]){

int[][]data;//聲明數(shù)組

data=newint[10][];

//為數(shù)組分配內(nèi)存

for(intr=0;r<data.length;r++)data[r]=newint[r+1];

//!!每行長(zhǎng)度不同

//給各個(gè)元素賦值

data[0][0]=1;for(intr=1;r<data.length;r++){//遍歷每行

data[r][0]=1;data[r][r]=1;//給第0列和最后一列賦值

for(intc=1;c<r;c++)//給第1列到第r-1列賦值

data[r][c]=data[r-1][c-1]+data[r-1][c];}//逐行輸出數(shù)組中的內(nèi)容

for(intr=0;r<data.length;r++){for(intc=0;c<=r;c++)System.out.print(data[r][c]+"");System.out.println();}}}利用二維數(shù)組構(gòu)造楊輝三角形前10行的內(nèi)容2.12字符串常量String與C不同!Java中的字符串是對(duì)象,不是字符數(shù)組!兩種字符串類:一種是字符串常量,它是用String標(biāo)準(zhǔn)類實(shí)現(xiàn)的;另一種是可編輯修改的字符串,它是用StringBuffer標(biāo)準(zhǔn)類實(shí)現(xiàn)的。字符串直接量同C語(yǔ)言一樣,Java的字符串直接量使用雙引號(hào)(")將字符序列括在其中。例如:"thisisastringliteral!"但它不是一個(gè)字符數(shù)組!在使用String類對(duì)象時(shí),需要注意下面幾點(diǎn):在Java語(yǔ)言中,字符串直接量中的每個(gè)字符占用兩個(gè)字節(jié)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論