




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、主要內(nèi)容(6學時)學時)v標識符、保留字、分隔符v數(shù)據(jù)類型v基本類型v運算符v常用JAVA數(shù)值計算方法v表達式v包裝類v輸入輸出2.1 標識符、保留字和分隔符2.1.1 2.1.1 標識符標識符v程序中使用的各種數(shù)據(jù)對象如符號常量、變量、方法、類等都需要一定的名稱,這種名稱叫做標識符(identifier)。vJava的標識符由字母、數(shù)字、下劃線(_)或美元符($)組成,但必須以字母、下劃線和美元符開始。 vJava標識符是大小寫敏感的,沒有字符數(shù)的限制。 vJava程序員在編程時的一些約定:(1)每個名字可由幾個單詞或其縮寫連接而成。(2)對于類名,每個單詞的開頭字母必須大寫。如Hello、
2、MyClass等。(3)方法名及變量的第一個字母不使用大寫。如myMethod()、intValue等。(4)表示私有或局部變量的標識符全部用小寫字母。(5)表示常量的標識符,字母全部用大寫。(6)包名全部作小寫字母。(7)標識符中不用或少用美元符。2.1.2 2.1.2 保留字保留字v保留字(reserved word)又稱為關鍵字,是Java語言本身使用的標識符,它有其特定的語法含義。所有的Java保留字將不能被用作標識符。 關鍵字1原始數(shù)據(jù)類型-byte-short-int-long-float-double-char-boolean循環(huán)關鍵字-do-while-for-break-co
3、ntinue分支關鍵字-if-else-switch-case-default-break方法、變量和類修飾符-private-public-protected-final-static-abstract-synchronized-volatile-strictfp關鍵字2異常處理-try-catch-finally-throw-throws對象相關關鍵字-new-extends-implements-class-instanceof-this-super 字面值常量字面值常量- false- true- null 方法相關關鍵字方法相關關鍵字- return- void 包相關關鍵字包相關關
4、鍵字- package- import2.1.3 2.1.3 分隔符分隔符v分隔符用來分隔開Java程序中的基本語法元素,可分為注釋(單行和多行注釋)、空白符(空格、回車和制表符)和普通分隔符(大括號、分號、逗號和冒號)三種。2.2 數(shù)據(jù)類型2.2.1 2.2.1 數(shù)據(jù)類型概述數(shù)據(jù)類型概述v計算機程序處理的對象即各種數(shù)據(jù),數(shù)據(jù)類型是指數(shù)據(jù)的內(nèi)在表現(xiàn)形式。v根據(jù)現(xiàn)實世界數(shù)據(jù)的不同形式,數(shù)據(jù)就劃分為多種不同的類型。數(shù)據(jù)類型不同,能進行的運算不同,取值范圍也不同,計算機語言中還反映為數(shù)據(jù)的存儲長度和形式不同。 基本類型數(shù)值類型 整型(byte、short、int、long) 實型(float、dou
5、ble) 字符型(char) 布爾型(boolean) 復合類型 數(shù)組 類(class) 接口(interface) Java語言的數(shù)據(jù)類型2.2.2 2.2.2 常量與變量常量與變量v程序中所處理的數(shù)據(jù)表現(xiàn)為兩種形式:常量和變量。1常量vJava中的常量值是用文字串表示的,反映了一類在程序執(zhí)行中不能變化的量。v常量區(qū)分為不同的類型,如: 整型常量整型常量123123 實型常量實型常量4.564.56 字符常量字符常量aa 布爾常量布爾常量truetrue和和falsefalse 字符串常量字符串常量Java programming Java programming 2. 變量v為了在Java
6、中存儲一個數(shù)據(jù),必須將它容納在一個變量之中。在變量中可根據(jù)需要存入不同的數(shù)據(jù),這就是“變量”的含義。變量具有名稱、類型、值和作用域等特性。在使用一個變量前必須先定義。變量定義是用標識符為變量命名、確定其數(shù)據(jù)類型,還可以根據(jù)需要為它賦初值(變量初始化)。定義了變量即為變量指定了存儲方式。若是基本類型的變量,因為它們的存儲長度是固定的,如何分配存儲單元就確定了。若是復合類型的變量,定義后還需要用new運算符為用戶數(shù)據(jù)分配存儲單元,復合類型變量中存儲用戶數(shù)據(jù)存儲單元的引用(指針)。v可以用如下語法定義變量: 類型 標識符 = 初始賦值 ,標識符;v該語句告訴編譯器用指定的類型和以標識符為名字建立一個
7、變量,這里的分號將告訴編譯器這是一個說明語句的結束;方格中的逗號和標識符表示可以把幾個類型相同的變量放在同一語句進行說明,變量名中間用逗號分隔。v在創(chuàng)建了一個變量以后,就可以給它賦值,或者用運算符對它進行允許的運算。2.3 基本類型2.3.1整型數(shù)據(jù)整型數(shù)據(jù)v整型數(shù)據(jù)是最普通的數(shù)據(jù)類型,可表示日常生活中的整數(shù)。1整型常量vJava的整型常數(shù)有三種形式:十進制、十六進制和八進制。v十進制整數(shù)以10為基數(shù),用09這10個數(shù)字和正、負號組成,如123,-456,0等。在Java中,十進制整數(shù)的第一位數(shù)字不能為0。v十六進制整數(shù)以16為基數(shù),用09的10個數(shù)字、字母AF(小寫也可,代表1015這些整數(shù)
8、)和正、負號組成。十六進制整數(shù)必須以0X或0 x作為開頭。如0 x123,-0 xabc等。v八進制整數(shù)以8為基數(shù),用07的8個數(shù)字和正、負號組成。八進制整數(shù)必須用0開始,如0567,-0123等。v每一個整型常數(shù)默認為int類型,占有32位(即4個字節(jié))的存儲空間。整型常數(shù)所表示的范圍為2,147,483,6472,147,483,648,若要使用更大的數(shù),可用64位(8字節(jié))的長整型數(shù)(long類型)。若希望把一個整數(shù)強制存為一個長整型數(shù),可以在數(shù)字后面加字母l或L。2、整型變量分四種: (1). int 型:4字節(jié),32位,取值范圍:-231231-1(2). byte 型:1字節(jié),8位
9、,取值范圍:-2727-1(3). short 型:2字節(jié),16位,取值范圍:-215215-1(4). long 型:8字節(jié),64位,取值范圍:-263263-12.3.2實型(浮點型)數(shù)據(jù)實型(浮點型)數(shù)據(jù)1. 實型常量vJava的實型常量有標準和科學計數(shù)法兩種表現(xiàn)形式。v(1)標準形式,由數(shù)字和小數(shù)點組成,且必須有小數(shù)點,如0.123,4.56,789.0等。v(2)科學計數(shù)法形式,數(shù)字中帶e或E,如123e或4.56E3,其中e或E前必須有數(shù)字,且e或E后面的數(shù)字(表示以10為底的乘冪部分)必須為整數(shù)。v實數(shù)后面可帶后綴F,f或D,d,分別表示單精度實數(shù)和雙精度實數(shù)。v2、實型變量v分
10、兩種:v(1)單精度 float 4字節(jié) 10-381038和-1038-10-38 v(2)雙精度 double 8字節(jié) 10-30810308和-10308-10-3082.3.3 字符型數(shù)據(jù)字符型數(shù)據(jù)v1、字符常量:v字符型char數(shù)據(jù)是由一對單引號括起來的單個字符。Java使用Unicode格式的16位字符集,而不僅僅為ASCII字符集,因此char類型的范圍從0到65535。Unicode能夠容納所有語言字符集,包括拉丁語、希臘語、阿拉伯語、希伯來語、漢語、日語、韓語等各國語言,因此使用16位是非常必要的。如: A,b, ,v在Java語言中,以反斜杠()開頭的多個字符表示一個轉義字
11、符,轉義字符一般用于表示某些非圖形(非可視)字符。 v2、字符變量v使用關鍵字char 來定義字符變量2.3.4 布爾型數(shù)據(jù)布爾型數(shù)據(jù)v1、常量:布爾boolean類型是最簡單的一種數(shù)據(jù)類型,布爾數(shù)據(jù)只有兩個值:true和false,且都是保留字,表示“真”和“假”這兩種狀態(tài)。關系運算和邏輯運算返回布爾類型的值。v2、變量:布爾型變量用boolean定義,例如: boolean mouseOn = true; boolean done = false;v布爾型是一個獨立的類型,它不像C語言中的布爾型代表0和1兩個整數(shù),由于這個原因,Java中的布爾類型不能轉換成數(shù)字。2.3.5 字符串數(shù)據(jù)字符
12、串數(shù)據(jù)1.字符串常量v字符串常量是用雙引號括起來的零個或多個字符(包括轉義字符)。例如: 空串 我們贏了!n 包含轉義字符的字符串v一個長字符串可以用“+”號分成幾個短字符串。例如: 中國 北京 + 2008 奧運! 一個字符串v在Java語言中,每個字符串常量被作為字符串類String的對象來處理。v注意:標志字符串開始和結束標志的雙引號必須在源代碼的同一行上。2.字符串變量v在Java語言中,字符串變量是對象,是復合類型。有兩種字符串變量類型:String類和StringBuffer類。String類是常量類,初始化后不能改變;StringBuffer類是字符串緩沖區(qū),可以修改。例如: S
13、tring str1 = new String(This is a string.); String str2 = This is a string.; StringBuffer str3 = new StringBuffer(); StringBuffer str4 = new StringBuffer(This is a string.);v符號常量 final格式:final 數(shù)據(jù)類型 變量名 =初值注意:符號常量的值不能被改變2.3.6 缺省初始值缺省初始值v在Java程序中,每個變量都對應一個值,不存在沒有值的變量。若一個變量只聲明而沒有初始化,則使用它的缺省初值。對于數(shù)值數(shù)據(jù),缺省
14、數(shù)值為相應類型的零;字符的缺省初值為u0000;布爾初值為false;Object類型初值為null。2.4 運算符v運算符的作用是與一定的運算數(shù)據(jù)組成表達式來完成相應的運算。對不同的數(shù)據(jù)類型,有著不同的運算符。對運算符,有運算對象(操作數(shù))個數(shù)及類型、運算優(yōu)先級、結合性等特性。vJava語言對運算符的優(yōu)先級、結合性和求值順序有明確的規(guī)定,從根本上消除了運算符運算過程的二義性以及結果不統(tǒng)一的弊端。2.4.1 算術運算符算術運算符v算術運算符按操作數(shù)的多少可分為一元(或稱單目)和二元(或稱雙目)兩類,一元運算符一次對一個操作數(shù)進行操作,二元運算符一次對兩個操作數(shù)進行操作。算術運算符的操作數(shù)類型是
15、數(shù)值類型。v一元運算符有+、-、+和-。一元運算符的結合性是右結合性。v二元運算符有+、-、*、/和%,這些運算符并不改變操作數(shù)的值,而是返回一個必須賦給變量的值,二元算術運算符具有左結合性。 運算符含義示例求值+加c = a + b -減c = a - b *乘c = a * b /除c = a / b %取模c = a % b +遞增a+-遞減b-取負數(shù)c= - av算術運算符與表達式加減運算符:加減運算符:+,-。雙目運算符,即連接兩個操作元。雙目運算符,即連接兩個操作元的運算符。結合方向從左到右。操作元是整型或浮點型的運算符。結合方向從左到右。操作元是整型或浮點型數(shù)據(jù)。優(yōu)先級是數(shù)據(jù)。優(yōu)
16、先級是4級。級。乘除余運算符:乘除余運算符:*,/,%。雙目運算符,結合方向從左。雙目運算符,結合方向從左到右,操作元是整型或浮點型數(shù)據(jù),優(yōu)先級是到右,操作元是整型或浮點型數(shù)據(jù),優(yōu)先級是3級。級。注:注:5/2的結果是的結果是2,要想得到,要想得到2.5,必須寫成,必須寫成5.0/2。算術表達式:用算術符號和括號連接符合算術表達式:用算術符號和括號連接符合java語法規(guī)則語法規(guī)則的式子。如的式子。如x+2*y-30+3*(y+5)。v自增自減運算符:+,-自增自減運算符是單目運算符,可以放在操作元之前,也可自增自減運算符是單目運算符,可以放在操作元之前,也可以放在操作元之后。優(yōu)先級是以放在操作
17、元之后。優(yōu)先級是2級,操作元必須是一個整型級,操作元必須是一個整型或浮點型變量,作用是使變量的值增或浮點型變量,作用是使變量的值增1或減或減1,如:,如:+x,-x表示在使用表示在使用x之前,先使之前,先使x的值加(減)的值加(減)1。x+,x表示在使用表示在使用x之后,使之后,使x的值加(減)的值加(減)1。粗略的看,粗略的看,+x和和x+的作用相當于的作用相當于x=x+1。但不同之處可。但不同之處可用下例說明:如果用下例說明:如果x的原值是的原值是5,對于,對于y=+x,y的值為的值為6。對。對于于y=x+,y的值為的值為5,然后,然后x的值變?yōu)榈闹底優(yōu)?。2.4.2關系運算符關系運算符v
18、關系運算符用于確定一個數(shù)據(jù)與另一個數(shù)據(jù)之間的關系,即進行關系運算。v所謂關系運算是比較運算,將兩個值進行比較。關系運算的結果值為true、false(布爾型)。vJava語言提供了6種關系運算符,它們是(大于)、=(大于或等于)、大于ab小于a=大于或等于a=b=小于或等于a=b2.4.3布爾運算符布爾運算符v布爾運算符可以對布爾類型的數(shù)據(jù)(布爾常量、布爾變量、關系表達式和布爾表達式等)進行運算,結果也為布爾類型。Java語言的布爾運算符見下表:運算符名稱 例子 ! 邏輯非 !a & 簡潔與 a & b | 簡潔或 a | b 異或 a b & 非簡潔與 a &
19、 b | 非簡潔或 a | b v布爾運算符的運算規(guī)則如下:v(1)單目運算符?。簩⒉紶栔等》?。v(2)雙目運算符&和&:當兩個運算對象的值都為true時,結果為true,其他情況均為false。v(3)雙目運算符|和|:當兩個運算對象的值都為false時,結果為false,其他情況均為true。v(4)雙目運算符:當兩個運算對象的值不同時為true,相同時為false。v注意:簡潔與、或和非簡潔與、或的結果有時不同。非簡潔與、非簡潔或運算時,運算符兩邊的表達式都先要運算執(zhí)行,然后兩表達式的結果再進行與、或運算。簡潔與、簡潔或運算時,若只運算左邊表達式即可確定與、或結果時,則右
20、邊的表達式將不會被計算。 2.4.4 位運算符位運算符v位運算符用來對二進制位位運算符用來對二進制位進行運算,運算操作數(shù)應進行運算,運算操作數(shù)應是整數(shù)類型,結果也是整是整數(shù)類型,結果也是整數(shù)類型。數(shù)類型。Java中提供了中提供了7種種位運算符,它們是位運算符,它們是 (按位按位取反取反)、& (與運算與運算)、| (或運或運算算)、 (異或運算異或運算)、 (算術右移算術右移)和和 (邏輯右移邏輯右移)。其中前四種稱。其中前四種稱為位邏輯運算符,后三種為位邏輯運算符,后三種稱為算術移位運算符。稱為算術移位運算符。 運算符含義示例 按位非(NOT) b = a & 按位與(AND
21、) c = a & b | 按位或(OR) c = a | b 按位異或(XOR) c = a b 右移 b = a 2 右移,左邊空出的位以0填充 b = a 2 左移 b = a b) ? a : b; / 將返回a和b中較大的那個數(shù)值。2.4.7 字符串運算符字符串運算符v運算符“+”可以實現(xiàn)兩個或多個字符串的連接,也可實現(xiàn)字符串與其他類對象的連接,在連接時,其他類對象會被轉換成字符串。另外,運算符“+=”把兩個字符串連接的結果放進第一個字符串里。例如,當想把幾項輸出內(nèi)容輸出在同一行里時使用的就是“+”運算符。2.6 表達式v表達式是由操作數(shù)和運算符按一定的語法形式組成的符號序列
22、。每個表達式結果運算后都會產(chǎn)生一個確定的值,稱為表達式的值。表達式的值是有類型的,該類型稱為表達式類型。表達式類型由運算符和參與運算的數(shù)據(jù)的類型決定??梢允呛唵晤愋?,也可以是復合類型。v可以按表達式值的類型將表達式分類。 v2.6.1 類型轉換v在一個表達式中可能有不同類型的數(shù)據(jù)進行混合運算,這是允許的,但在運算時,Java將不同類型的數(shù)據(jù)轉換成相同類型,再進行運算。v1. 自動類型轉換v整型、實型和字符型數(shù)據(jù)可以進行混合運算。在運算中,不同類型的數(shù)據(jù)先轉換成相同類型,然后再進行運算。轉換從低級到高級。可混合運算數(shù)據(jù)類型從低到高排列如下: 低 byte,short,char,int,long,
23、float,double 高v2. 強制類型轉換v高級數(shù)據(jù)要轉換為低級數(shù)據(jù)時,需進行強制類型轉換,Java不象C/C+那樣允許自動類型轉換。從一種類型轉換到另一種類型可以使用下面的語句:int a; char b;b=(char)a;v加括號的char告訴編譯器想把整型變成字符并把它放在b里。v3. 表達式求值中的自動類型提升v在表達式的求值過程中,運算中間值的精度有時會超出操作數(shù)的取值范圍。例如: byte x = 30,y = 50,z = 100; int a = x * y / z;v在運算x*y項時,結果1500已經(jīng)超出了操作數(shù)byte類型的范圍。為解決這類問題,Java語言在對表達
24、式求值時,自動提升byte或short類型的數(shù)據(jù)為int類型的。 v自動類型提升對數(shù)據(jù)的運算帶來了方便,但也容易引起編譯錯誤。例如: byte x = 30; x = - x; / 編譯錯誤!不能向byte變量賦int值v2.6.2 優(yōu)先級v在一個表達式中可能有各種運算符,Java語言規(guī)定了表達式中出現(xiàn)各種運算符的時候,哪種運算符先進行運算,哪種運算符后進行運算的運算符運算順序,稱為運算符的優(yōu)先級,它指明了同一表達式中多個運算符被執(zhí)行的次序,同一級里的操作符具有相同的優(yōu)先級。在表達式中,優(yōu)先級高的運算符先進行運算。 v2.6.3 結合性v在表達式中出現(xiàn)多個相同優(yōu)先級的運算符時,就需要考慮結合性
25、。結合性確定同級運算符的運算順序。運算符有左結合性和右結合性兩種。左結合性指的是從左向右使用運算符。例如二元算術運算符具有左結合性,計算a + b - c時,操作數(shù)b的左、右運算符 +、- 是同級運算符,計算時,b先與左邊的 + 結合,計算a + b,其和再與c相減;而右結合性是從右向左使用運算符。例如,賦值運算符具有右結合性,計算a = b = c時,操作數(shù)b的左、右運算符都是同級的賦值運算符,所以,先執(zhí)行b = c,再執(zhí)行a = b。2.5 常用Java數(shù)值計算方法v在Java的類Math中包含了一些數(shù)值常量,如E和PI,以及一些基本的數(shù)值計算方法,如指數(shù)、對數(shù)、平方根和三角函數(shù)等,為用戶
26、程序進行數(shù)值計算帶來了方便。常用的數(shù)值方法有:abs ()絕對值、sin()正弦值、cos()余弦值、tan()正切值、asin()反正弦值、acos()反余弦值、atan()反正切值、ceil()求不小于參數(shù)的最小整數(shù)、floor()求不大于參數(shù)的最大整數(shù)、pow(a,b)求a的b次方、random()產(chǎn)生0.01.0的偽隨機數(shù)、sqrt()平方根、log()自然對數(shù)、max(a,b)求a,b中的大者、min(a,b)求a,b中的小者等。v【例2.5】類Math中常量和方法的使用。class UseMath class UseMath public static void main(Stri
27、ng args) public static void main(String args) double a = 3.0, b = 4.0;double a = 3.0, b = 4.0;double c = Math.sqrt(a double c = Math.sqrt(a * * a + b a + b * * b); b);System.out.println(System.out.println(半半徑為徑為 3.0 3.0 的的圓圓面面積積是是 : + Math.PI + Math.PI * * a a * * a); a);System.out.println(System.ou
28、t.println(直角三角形直角直角三角形直角邊為邊為 3.0 3.0 和和 4.0 4.0 時時 的斜的斜邊長為邊長為 : + c); + c);System.out.println( -8 System.out.println( -8 和和 -4 -4 的的較較大者是大者是 : + Math.max(-8, -4); + Math.max(-8, -4);System.out.println(18System.out.println(18的的絕對值絕對值是是 : + Math.abs(-18); + Math.abs(-18);System.out.println(System.out.
29、println(不小于不小于45.745.7的最小整的最小整數(shù)數(shù)是是 : + Math.ceil(45.7); + Math.ceil(45.7);System.out.println( 不大于45.7的最大整數(shù)是 : + Math.floor(45.7);System.out.println(“sin25度的值是 :” + Math.sin(25.0/180*Math.PI); v程序運行結果如下:半徑為 3.0 的圓面積是 :28.274333882308138直角三角形直角邊為 3.0 和 4.0 時的斜邊長為 : 5.0-8 和 -4 的較大者是 :-4-18的絕對值是 :18不小于4
30、5.7的最小整數(shù)是 :46.0不大于45.7的最大整數(shù)是 :45.0sin25度的值是 :0.42261826174069944v注意:程序中使用了一些Math類中的常量和方法,它們都是Math類的靜態(tài)成員,一般情況下,可通過“類名.靜態(tài)成員名”的格式來引用一個類中的靜態(tài)成員。但若使用了Java語言的靜態(tài)引入功能,則可省去靜態(tài)成員名稱前的類名。即若在程序的最前面增加語句:vimport static java.lang.Math.*;v那么,程序中所有的Math可省去不寫,這樣可簡化程序的書寫和輸入。2.7 包裝類(wrapper class)vJava語言中專門提供了所謂的包裝類(wrapp
31、er class)。這些類將基本類型包裝成類。與基本類型對應的包裝類有Byte 、Short 、Integer 、Long 、Character 、Float 、Double 、Boolean 和Void 。 v使用包裝類的方法與其他類一樣,定義對象的引用、用new運算符創(chuàng)建對象,用方法來對對象進行操作。v例如: Integer i = new Integer(10); / i 是 Integer類的一個對象,值為10 Integer j = new Integer(20); / j 是 Integer類的一個對象,值為20v【例2.8】包裝類Integer類常用方法的使用以及與int數(shù)據(jù)進行
32、混合運算的例子。class UseWrapper public static void main(String args) int num = 2005; System.out.println(num + 的二進制是: + Integer.toBinaryString(num); / 轉換十進制數(shù)為二進制數(shù) System.out.println(num + 的八進制是: + Integer.toOctalString(num); / 轉換十進制數(shù)為八進制數(shù) System.out.println(num + 的十六進制是: + Integer.toHexString(num); / 轉換十進制數(shù)
33、為十六進制數(shù) Integer iobj = Integer.valueOf(123); Integer iobj1 = new Integer(234); Integer iobj2 = new Integer(234); int i = Value(); System.out.println(iobj = + iobj); System.out.println(i = + i); System.out.println(iobj1=iobj2 ? + iobj1.equals(iobj2); / 比較兩個對象是否相等 iobj = iobj + num; / int數(shù)據(jù)和Int
34、eger數(shù)據(jù)可以混合運算 System.out.println(iobj = + iobj); num = iobj + num; System.out.println(num = + num); v程序運行結果如下:2005 的二進制是: 111110101012005 的八進制是: 37252005 的十六進制是: 7d5iobj = 123i = 123iobj1=iobj2 ? trueiobj = 2128num = 4133 2.8 輸入輸出初步v2.8.1標準輸入輸出v1.標準輸出v(1)print和println方法v可以用System.out.println在程序中可以將常量
35、、變量或表達式的值輸出到屏幕。println方法可有0個或1個參數(shù)。若參數(shù)是0個,則輸出一回車換行,光標移動到下一行行首;若有一個參數(shù),該參數(shù)可以是char,byte,int,boolean,float,double,String,char(字符數(shù)組)和Object(對象)類型的,各種類型的數(shù)據(jù)轉換成相應的字符串類型輸出。輸出給定所有內(nèi)容后,輸出一個回車換行。v另外也常用System.out.print進行輸出,print方法需要一個參數(shù)來輸出,可用的參數(shù)類型與println相同,輸出參數(shù)的值后不輸出回車換行,因此,若輸出內(nèi)容本 身 不 包 含 控 制 光 標 的 內(nèi) 容 或 未 滿 行 ,S
36、ystem.out.print輸出后,光標將停留在輸出內(nèi)容后。v(2)printf和format格式輸出方法v要控制輸出數(shù)據(jù)的格式,可使用System.out.printf和類似的System.out.format方法,在方法的參數(shù)中對每一輸出項(表達式),都可在一個格式控制字符串中用開始的格式符進行格式控制。v例如:System.out.printf(a=%dtb=%ftc=%c,a,b,c);System.out.printf(a=%dtb=%ftc=%c,a,b,c);或:或:System.out.format(a=%dtb=%ftc=%c,a,b,c);System.out.forma
37、t(a=%dtb=%ftc=%c,a,b,c);v其中的輸出項為a、b和c三項,在格式控制字符串a(chǎn)=%dtb=%ftc=%c中有三個格式符對它們進行控制,未指出順序時,按照自然順序進行格式控制,即:d控制a 使其以十進制整數(shù)形式輸出;f控制b使其以十進制實數(shù)形式輸出;c控制c使其以字符形式輸出。為了能得到正確輸出的數(shù)據(jù)和格式,不同類型的輸出項應使用不同的格式符來進行格式控制輸出。適用于基本類型和字符串類型輸出的常用格式符有:b b 布爾型數(shù)據(jù)布爾型數(shù)據(jù) c c 字符字符d d 十進制整數(shù)十進制整數(shù) f f 十進制實數(shù)十進制實數(shù)e e或或g g 科學記數(shù)法形式的十進制實數(shù)科學記數(shù)法形式的十進制實
38、數(shù) s s 字符串字符串v格式控制字符串中的其他字符,無格式控制功能,輸出時將按字符原樣輸出。如上例中的a=、b=、c=和t(制表符)將按原意輸出。v2.標準輸入v(1)read方法v可以用System.in.read()從鍵盤輸入整數(shù)值在0255之間的byte值(int類型)。若程序運行時需要從鍵盤輸入其他類型的數(shù)據(jù),則需要使用Java提供的輸入/輸出功能。不論需從鍵盤輸入何種類型的數(shù)據(jù),Java從鍵盤接收數(shù)據(jù)都是以字符串的形式進行,再根據(jù)實際數(shù)據(jù)的需要進行類型轉換。v應用本方法時要使用Java的異常處理機制。 v【例2.9】從鍵盤輸入一個字符,并輸出它在Unicode字符集中的前一字符和后
39、一字符。import java.io.*; / 引入java.io包class CharDemo public static void main(String args) throws IOException char c,c1,c2; c=(char)System.in.read(); / 輸入字符 c1=(char)(c-1); c2=(char)(c+1); System.out.println( : + c1); System.out.println( : + c2); v(2)使用next方法v若使用Java提供java.util.scanner類中的各種next方法,可從鍵盤輸入各
40、種基本類型和字符串類型的數(shù)據(jù)。不論需從鍵盤輸入何種類型的數(shù)據(jù),Java從鍵盤接收數(shù)據(jù)都是以字符串的形式進行,next方法要根據(jù)輸入數(shù)據(jù)的類型來選用。有nextByte、nextInt、nextShort、nextLong、nextFloat、nextDouble、nextBoolean和next(以空格和回車為結束標記的字符串輸入)等適用于不同類型數(shù)據(jù)輸入的方法。使用next方法進行鍵盤輸入的例子如下。v【例2.10】從鍵盤輸入三角形的三個邊長,求這個三角形的面積。import java.util.Scanner;class TriArea public static void main(String args) System.out.printf(請輸入三角形的三邊長:n); Scanner sc = new Scanner(System.in); double a = sc.nextDouble(); double b = sc.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 個人財產(chǎn)安全設備銷售與租賃合同
- 外墻保溫裝飾一體板施工合同
- 學校專家聘用合同
- 關于提高工作效率的溝通機制研究報告
- 鄉(xiāng)村發(fā)展行動指導書
- 制造業(yè)企業(yè)數(shù)字化轉型實施方案
- 核電安全施工方案模板
- 籃球場工程施工方案
- 河南電力電纜線槽施工方案
- 建筑工程切險保險合同
- 【公開課課件】6.4.3余弦定理、正弦定理1課件-2021-2022學年高一下學期數(shù)學人教A版(2019)必修第二冊
- 防水板臺車施工方案
- 提高地下室管線一次性安裝合格率
- 小學三年級數(shù)獨比賽“六宮”練習題
- 實驗一、儀器的認領、洗滌、干燥及樣品的稱量
- 通橋(2013)8388A常用跨度梁橋面附屬設施_圖文
- SF_T 0112-2021 法醫(yī)臨床影像學檢驗實施規(guī)范_(高清版)
- 干部調(diào)動介紹信(存根)Word版
- 油田科研單位有效發(fā)揮技術專家作用初探
- 席位卡A4紙打印模板(共3頁)
- 研究生英語寫譯教程基礎級第三版袁錫興楊若東寫作篇Chapter1Theparagraph
評論
0/150
提交評論