




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、2.1 標(biāo)識(shí)符、保管字和分隔符v2.1.1 標(biāo)識(shí)符v程序中運(yùn)用的各種數(shù)據(jù)對(duì)象如符號(hào)常量、變量、方法、類等都需求一定的稱號(hào),這種稱號(hào)叫做標(biāo)識(shí)符identifier。vJava的標(biāo)識(shí)符由字母、數(shù)字、下劃線_或美圓符($)組成,但必需以字母、下劃線和美圓符開場(chǎng)。 vJava標(biāo)識(shí)符是大小寫敏感的,沒有字符數(shù)的限制。 v2.1.2 保管字v保管字reserved word又稱為關(guān)鍵字,是Java言語(yǔ)本身運(yùn)用的標(biāo)識(shí)符,它有其特定的語(yǔ)法含義。一切的Java保管字將不能被用作標(biāo)識(shí)符。 v2.1.3 分隔符v分隔符用來(lái)分隔開Java程序中的根本語(yǔ)法元素,可分為注釋單行和多行注釋、空白符空格、回車和制表符和普通分
2、隔符大括號(hào)、分號(hào)、逗號(hào)和冒號(hào)三種。 2.2 數(shù)據(jù)類型v2.2.1 數(shù)據(jù)類型概述v計(jì)算機(jī)程序處置的對(duì)象即各種數(shù)據(jù),數(shù)據(jù)類型是指數(shù)據(jù)的內(nèi)在表現(xiàn)方式。v根據(jù)現(xiàn)實(shí)世界數(shù)據(jù)的不同方式,數(shù)據(jù)就劃分為多種不同的類型。數(shù)據(jù)類型不同,能進(jìn)展的運(yùn)算不同,取值范圍也不同,計(jì)算機(jī)言語(yǔ)中還反映為數(shù)據(jù)的存儲(chǔ)長(zhǎng)度和方式不同。 基本類型數(shù)值類型 整型(byte、short、int、long) 實(shí)型(float、double) 字符型(char) 布爾型(boolean) 復(fù)合類型 數(shù)組 類(class) 接口(interface) Java言語(yǔ)的數(shù)據(jù)類型v2.2.2 常量與變量v程序中所處置的數(shù)據(jù)表現(xiàn)為兩種方式:常量和變量。
3、v1常量vJava中的常量值是用文字串表示的,反映了一類在程序執(zhí)行中不能變化的量。v常量區(qū)分為不同的類型,如:v 整型常量123v 實(shí)型常量4.56v 字符常量av 布爾常量true和falsev 字符串常量Java programming v2. 變量v為了在Java中存儲(chǔ)一個(gè)數(shù)據(jù),必需將它包容在一個(gè)變量之中。在變量中可根據(jù)需求存入不同的數(shù)據(jù),這就是“變量的含義。變量具有稱號(hào)、類型、值和作用域等特性。在運(yùn)用一個(gè)變量前必需先定義。變量定義是用標(biāo)識(shí)符為變量命名、確定其數(shù)據(jù)類型,還可以根據(jù)需求為它賦初值變量初始化。定義了變量即為變量指定了存儲(chǔ)方式。假設(shè)是根本類型的變量,由于它們的存儲(chǔ)長(zhǎng)度是固定的,
4、如何分配存儲(chǔ)單元就確定了。假設(shè)是復(fù)合類型的變量,定義后還需求用new運(yùn)算符為用戶數(shù)據(jù)分配存儲(chǔ)單元,復(fù)合類型變量中存儲(chǔ)用戶數(shù)據(jù)存儲(chǔ)單元的援用指針。v可以用如下語(yǔ)法定義變量:v 類型 標(biāo)識(shí)符 = 初始賦值 ,標(biāo)識(shí)符;v該語(yǔ)句通知編譯器用指定的類型和以標(biāo)識(shí)符為名字建立一個(gè)變量,這里的分號(hào)將通知編譯器這是一個(gè)闡明語(yǔ)句的終了;方格中的逗號(hào)和標(biāo)識(shí)符表示可以把幾個(gè)類型一樣的變量放在同一語(yǔ)句進(jìn)展闡明,變量名中間用逗號(hào)分隔。v在創(chuàng)建了一個(gè)變量以后,就可以給它賦值,或者用運(yùn)算符對(duì)它進(jìn)展允許的運(yùn)算。2.3 根本類型v2.3.1整型數(shù)據(jù)v整型數(shù)據(jù)是最普通的數(shù)據(jù)類型,可表示日常生活中的整數(shù)。v1整型常量vJava的整型
5、常數(shù)有三種方式:十進(jìn)制、十六進(jìn)制和八進(jìn)制。v十進(jìn)制整數(shù)以10為基數(shù),用09這10個(gè)數(shù)字和正、負(fù)號(hào)組成,如123,-456,0等。在Java中,十進(jìn)制整數(shù)的第一位數(shù)字不能為0。v十六進(jìn)制整數(shù)以16為基數(shù),用09的10個(gè)數(shù)字、字母AF小寫也可,代表1015這些整數(shù)和正、負(fù)號(hào)組成。十六進(jìn)制整數(shù)必需以0X或0 x作為開頭。如0 x123,-0 xabc等。v八進(jìn)制整數(shù)以8為基數(shù),用07的8個(gè)數(shù)字和正、負(fù)號(hào)組成。八進(jìn)制整數(shù)必需用0開場(chǎng),如0567,-0123等。v每一個(gè)整型常數(shù)默以為int類型,占有32位即4個(gè)字節(jié)的存儲(chǔ)空間。整型常數(shù)所表示的范圍為2,147,483,6472,147,483,648,假
6、設(shè)要運(yùn)用更大的數(shù),可用64位8字節(jié)的長(zhǎng)整型數(shù)long類型。假設(shè)希望把一個(gè)整數(shù)強(qiáng)迫存為一個(gè)長(zhǎng)整型數(shù),可以在數(shù)字后面加字母l或L。v2.3.2實(shí)型浮點(diǎn)型數(shù)據(jù)v1. 實(shí)型常量vJava的實(shí)型常量有規(guī)范和科學(xué)計(jì)數(shù)法兩種表現(xiàn)方式。v(1)規(guī)范方式,由數(shù)字和小數(shù)點(diǎn)組成,且必需有小數(shù)點(diǎn),如0.123,4.56,789.0等。v(2)科學(xué)計(jì)數(shù)法方式,數(shù)字中帶e或E,如123e或4.56E3,其中e或E前必需有數(shù)字,且e或E后面的數(shù)字表示以10為底的乘冪部分必需為整數(shù)。v實(shí)數(shù)后面可帶后綴F,f或D,d,分別表示單精度實(shí)數(shù)和雙精度實(shí)數(shù)。v2.3.3 字符型數(shù)據(jù)v字符型char數(shù)據(jù)是由一對(duì)單引號(hào)括起來(lái)的單個(gè)字符。J
7、ava運(yùn)用Unicode格式的16位字符集,而不僅僅為ASCII字符集,因此char類型的范圍從0到65535。Unicode可以包容一切言語(yǔ)字符集,包括拉丁語(yǔ)、希臘語(yǔ)、阿拉伯語(yǔ)、希伯來(lái)語(yǔ)、漢語(yǔ)、日語(yǔ)、韓語(yǔ)等各國(guó)言語(yǔ),因此運(yùn)用16位是非常必要的。v在Java言語(yǔ)中,以反斜杠開頭的多個(gè)字符表示一個(gè)本義字符,本義字符普通用于表示某些非圖形非可視字符。 v2.3.4 布爾型數(shù)據(jù)v布爾boolean類型是最簡(jiǎn)單的一種數(shù)據(jù)類型,布爾數(shù)據(jù)只需兩個(gè)值:true和false,且都是保管字,表示“真和“假這兩種形狀。關(guān)系運(yùn)算和邏輯運(yùn)算前往布爾類型的值。v布爾型變量用boolean定義,例如:v boolean
8、mouseOn = true;v boolean done = false;v布爾型是一個(gè)獨(dú)立的類型,它不像C言語(yǔ)中的布爾型代表0和1兩個(gè)整數(shù),由于這個(gè)緣由,Java中的布爾類型不能轉(zhuǎn)換成數(shù)字。v2.3.5 字符串?dāng)?shù)據(jù)v1.字符串常量v字符串常量是用雙引號(hào)括起來(lái)的零個(gè)或多個(gè)字符包括本義字符。例如:v 空串v 我們贏了!n 包含本義字符的字符串v一個(gè)長(zhǎng)字符串可以用“+號(hào)分成幾個(gè)短字符串。例如:v 中國(guó) 北京 +v 2019 奧運(yùn)! 一個(gè)字符串v在Java言語(yǔ)中,每個(gè)字符串常量被作為字符串類String的對(duì)象來(lái)處置。v2.字符串變量v在Java言語(yǔ)中,字符串變量是對(duì)象,是復(fù)合類型。有兩種字符串變量
9、類型:String類和StringBuffer類。String類是常量類,初始化后不能改動(dòng);StringBuffer類是字符串緩沖區(qū),可以修正。例如:v String str1 = new String(This is a string.);v String str2 = This is a string.;v StringBuffer str3 = new StringBuffer();v StringBuffer str4 = new StringBuffer(This is a string.);v2.3.6 缺省初始值v在Java程序中,每個(gè)變量都對(duì)應(yīng)一個(gè)值,不存在沒有值的變量。假設(shè)一
10、個(gè)變量只聲明而沒有初始化,那么運(yùn)用它的缺省初值。對(duì)于數(shù)值數(shù)據(jù),缺省數(shù)值為相應(yīng)類型的零;字符的缺省初值為u0000;布爾初值為false;Object類型初值為null。2.4 運(yùn)算符v運(yùn)算符的作用是與一定的運(yùn)算數(shù)據(jù)組成表達(dá)式來(lái)完成相應(yīng)的運(yùn)算。對(duì)不同的數(shù)據(jù)類型,有著不同的運(yùn)算符。對(duì)運(yùn)算符,有運(yùn)算對(duì)象操作數(shù)個(gè)數(shù)及類型、運(yùn)算優(yōu)先級(jí)、結(jié)合性等特性。vJava言語(yǔ)對(duì)運(yùn)算符的優(yōu)先級(jí)、結(jié)合性和求值順序有明確的規(guī)定,從根本上消除了運(yùn)算符運(yùn)算過程的二義性以及結(jié)果不一致的弊端。v2.4.1 算術(shù)運(yùn)算符v算術(shù)運(yùn)算符按操作數(shù)的多少可分為一元或稱單目和二元或稱雙目?jī)深?,一元運(yùn)算符一次對(duì)一個(gè)操作數(shù)進(jìn)展操作,二元運(yùn)算符一次
11、對(duì)兩個(gè)操作數(shù)進(jìn)展操作。算術(shù)運(yùn)算符的操作數(shù)類型是數(shù)值類型。v一元運(yùn)算符有+、-、+和-。一元運(yùn)算符的結(jié)合性是右結(jié)合性。v二元運(yùn)算符有+、-、*、/和%,這些運(yùn)算符并不改動(dòng)操作數(shù)的值,而是前往一個(gè)必需賦給變量的值,二元算術(shù)運(yùn)算符具有左結(jié)合性。 v2.4.2關(guān)系運(yùn)算符v關(guān)系運(yùn)算符用于確定一個(gè)數(shù)據(jù)與另一個(gè)數(shù)據(jù)之間的關(guān)系,即進(jìn)展關(guān)系運(yùn)算。所謂關(guān)系運(yùn)算是比較運(yùn)算,將兩個(gè)值進(jìn)展比較。關(guān)系運(yùn)算的結(jié)果值為true、false布爾型。Java言語(yǔ)提供了6種關(guān)系運(yùn)算符,它們是(大于)、=(大于或等于)、=(小于或等于)、!=(不等于)和=(等于) ,都是雙目運(yùn)算符。v運(yùn)算符“=和“!=的運(yùn)算優(yōu)先級(jí)低于另外四個(gè)關(guān)系運(yùn)
12、算符。 v2.4.3布爾運(yùn)算符v布爾運(yùn)算符可以對(duì)布爾類型的數(shù)據(jù)布爾常量、布爾變量、關(guān)系表達(dá)式和布爾表達(dá)式等進(jìn)展運(yùn)算,結(jié)果也為布爾類型。Java言語(yǔ)的布爾運(yùn)算符見下表:運(yùn)算符名稱 例子 ! 邏輯非 !a & 簡(jiǎn)潔與 a & b | 簡(jiǎn)潔或 a | b 異或 a b & 非簡(jiǎn)潔與 a & b | 非簡(jiǎn)潔或 a | b v布爾運(yùn)算符的運(yùn)算規(guī)那么如下:v(1)單目運(yùn)算符?。簩⒉紶栔等》?。v(2)雙目運(yùn)算符&和&:當(dāng)兩個(gè)運(yùn)算對(duì)象的值都為true時(shí),結(jié)果為true,其他情況均為false。v(3)雙目運(yùn)算符|和|:當(dāng)兩個(gè)運(yùn)算對(duì)象的值都為false時(shí),結(jié)果為f
13、alse,其他情況均為true。v(4)雙目運(yùn)算符:當(dāng)兩個(gè)運(yùn)算對(duì)象的值不同時(shí)為true,一樣時(shí)為false。v留意:簡(jiǎn)約與、或和非簡(jiǎn)約與、或的結(jié)果有時(shí)不同。非簡(jiǎn)約與、非簡(jiǎn)約或運(yùn)算時(shí),運(yùn)算符兩邊的表達(dá)式都先要運(yùn)算執(zhí)行,然后兩表達(dá)式的結(jié)果再進(jìn)展與、或運(yùn)算。簡(jiǎn)約與、簡(jiǎn)約或運(yùn)算時(shí),假設(shè)只運(yùn)算左邊表達(dá)式即可確定與、或結(jié)果時(shí),那么右邊的表達(dá)式將不會(huì)被計(jì)算。 v2.4.4 位運(yùn)算符v位運(yùn)算符用來(lái)對(duì)二進(jìn)制位進(jìn)展運(yùn)算,運(yùn)算操作數(shù)應(yīng)是整數(shù)類型,結(jié)果也是整數(shù)類型。Java中提供了7種位運(yùn)算符,它們是 (按位取反)、& (與運(yùn)算)、| (或運(yùn)算)、 (異或運(yùn)算)、 (算術(shù)右移)和 (邏輯右移)。其中前四種稱為
14、位邏輯運(yùn)算符,后三種稱為算術(shù)移位運(yùn)算符。 v2.4.5 賦值運(yùn)算符v賦值運(yùn)算符都是二元運(yùn)算符,具有右結(jié)合性。v1簡(jiǎn)單賦值運(yùn)算符=v賦值運(yùn)算符“=用來(lái)將一個(gè)數(shù)據(jù)賦給一個(gè)變量。在賦值運(yùn)算符兩側(cè)的類型不一致的情況下,假設(shè)左側(cè)變量的數(shù)據(jù)類型的級(jí)別高,那么右側(cè)的數(shù)據(jù)被轉(zhuǎn)換為與左側(cè)一樣的高級(jí)數(shù)據(jù)類型,然后賦給左側(cè)變量。否那么,需求運(yùn)用強(qiáng)迫類型轉(zhuǎn)換運(yùn)算符。v2復(fù)合賦值運(yùn)算符vJava言語(yǔ)允許運(yùn)用復(fù)合賦值運(yùn)算符,即在賦值符前加上其他運(yùn)算符。復(fù)合賦值運(yùn)算符是表達(dá)式的一種縮寫。例如:a += 5根本等價(jià)于a = a + 5。復(fù)合賦值運(yùn)算符有11種。v2.4.6 條件運(yùn)算符v條件運(yùn)算符是一種三元運(yùn)算符,它的格式如下
15、:v 布爾表達(dá)式 ?表達(dá)式1: 表達(dá)式2v在這個(gè)式子中,先計(jì)算布爾表達(dá)式的真假,假設(shè)為真,那么計(jì)算并前往表達(dá)式1,假設(shè)為假,那么計(jì)算并前往表達(dá)式2。例如:v(a b) ? a : b; / 將前往a和b中較大的那個(gè)數(shù)值。v2.4.7 字符串運(yùn)算符v運(yùn)算符“+可以實(shí)現(xiàn)兩個(gè)或多個(gè)字符串的銜接,也可實(shí)現(xiàn)字符串與其他類對(duì)象的銜接,在銜接時(shí),其他類對(duì)象會(huì)被轉(zhuǎn)換成字符串。另外,運(yùn)算符“+=把兩個(gè)字符串銜接的結(jié)果放進(jìn)第一個(gè)字符串里。例如,當(dāng)想把幾項(xiàng)輸出內(nèi)容輸出在同一行里時(shí)運(yùn)用的就是“+運(yùn)算符。2.5 常用Java數(shù)值計(jì)算方法v在Java的類Math中包含了一些數(shù)值常量,如E和PI,以及一些根本的數(shù)值計(jì)算方法
16、,如指數(shù)、對(duì)數(shù)、平方根和三角函數(shù)等,為用戶程序進(jìn)展數(shù)值計(jì)算帶來(lái)了方便。常用的數(shù)值方法有:abs ()絕對(duì)值、sin()正弦值、cos()余弦值、tan()正切值、asin()反正弦值、acos()反余弦值、atan()反正切值、ceil()求不小于參數(shù)的最小整數(shù)、floor()求不大于參數(shù)的最大整數(shù)、pow(a,b)求a的b次方、random()產(chǎn)生0.01.0的偽隨機(jī)數(shù)、sqrt()平方根、log()自然對(duì)數(shù)、max(a,b)求a,b中的大者、min(a,b)求a,b中的小者等。v【例2.5】類Math中常量和方法的運(yùn)用。vclass UseMath vpublic static void
17、main(String args) vdouble a = 3.0, b = 4.0;vdouble c = Math.sqrt(a * a + b * b);vSystem.out.println(半徑為 3.0 的圓面積是 : v + Math.PI * a * a);vSystem.out.println(直角三角形直角邊為 3.0 和 4.0 時(shí)v 的斜邊長(zhǎng)為 : + c);vSystem.out.println( -8 和 -4 的較大者是 : v + Math.max(-8, -4);vSystem.out.println(18的絕對(duì)值是 : v + Math.abs(-18);v
18、System.out.println(不小于45.7的最小整數(shù)是 : v + 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); 程序運(yùn)轉(zhuǎn)結(jié)果如下:半徑為 3.0 的圓面積是 :28.274333882308直角三角形直角邊為 3.0 和 4.0 時(shí)的斜邊長(zhǎng)為 : 5.0-8 和 -4 的較大者是 :-4-18的絕對(duì)值是 :18不小于45.7的最小整數(shù)是 :46.0不大于45.7的最大
19、整數(shù)是 :45.0sin25度的值是 :0.42261826174069944v留意:程序中運(yùn)用了一些Math類中的常量和方法,它們都是Math類的靜態(tài)成員,普通情況下,可經(jīng)過“類名.靜態(tài)成員名的格式來(lái)援用一個(gè)類中的靜態(tài)成員。但假設(shè)運(yùn)用了Java言語(yǔ)的靜態(tài)引入功能,那么可省去靜態(tài)成員稱號(hào)前的類名。即假設(shè)在程序的最前面添加語(yǔ)句:vimport static java.lang.Math.*;v那么,程序中一切的Math可省去不寫,這樣可簡(jiǎn)化程序的書寫和輸入。2.6 表達(dá)式v表達(dá)式是由操作數(shù)和運(yùn)算符按一定的語(yǔ)法方式組成的符號(hào)序列。每個(gè)表達(dá)式結(jié)果運(yùn)算后都會(huì)產(chǎn)生一個(gè)確定的值,稱為表達(dá)式的值。表達(dá)式的值
20、是有類型的,該類型稱為表達(dá)式類型。表達(dá)式類型由運(yùn)算符和參與運(yùn)算的數(shù)據(jù)的類型決議??梢允呛?jiǎn)單類型,也可以是復(fù)合類型。v可以按表達(dá)式值的類型將表達(dá)式分類。 v2.6.1 類型轉(zhuǎn)換v在一個(gè)表達(dá)式中能夠有不同類型的數(shù)據(jù)進(jìn)展混合運(yùn)算,這是允許的,但在運(yùn)算時(shí),Java將不同類型的數(shù)據(jù)轉(zhuǎn)換成一樣類型,再進(jìn)展運(yùn)算。v1. 自動(dòng)類型轉(zhuǎn)換v整型、實(shí)型和字符型數(shù)據(jù)可以進(jìn)展混合運(yùn)算。在運(yùn)算中,不同類型的數(shù)據(jù)先轉(zhuǎn)換成一樣類型,然后再進(jìn)展運(yùn)算。轉(zhuǎn)換從低級(jí)到高級(jí)??苫旌线\(yùn)算數(shù)據(jù)類型從低到高陳列如下:v 低 byte,short,char,int,long,float,double 高v2. 強(qiáng)迫類型轉(zhuǎn)換v高級(jí)數(shù)據(jù)要轉(zhuǎn)換為低
21、級(jí)數(shù)據(jù)時(shí),需進(jìn)展強(qiáng)迫類型轉(zhuǎn)換,Java不象C/C+那樣允許自動(dòng)類型轉(zhuǎn)換。從一種類型轉(zhuǎn)換到另一種類型可以運(yùn)用下面的語(yǔ)句:vint a;v char b;vb=(char)a;v加括號(hào)的char通知編譯器想把整型變成字符并把它放在b里。v3. 表達(dá)式求值中的自動(dòng)類型提升v在表達(dá)式的求值過程中,運(yùn)算中間值的精度有時(shí)會(huì)超出操作數(shù)的取值范圍。例如:v byte x = 30,y = 50,z = 100;v int a = x * y / z;v在運(yùn)算x*y項(xiàng)時(shí),結(jié)果1500曾經(jīng)超出了操作數(shù)byte類型的范圍。為處理這類問題,Java言語(yǔ)在對(duì)表達(dá)式求值時(shí),自動(dòng)提升byte或short類型的數(shù)據(jù)為int類
22、型的。 v自動(dòng)類型提升對(duì)數(shù)據(jù)的運(yùn)算帶來(lái)了方便,但也容易引起編譯錯(cuò)誤。例如:v byte x = 30;v x = - x; / 編譯錯(cuò)誤!不能向byte變量賦int值v2.6.2 優(yōu)先級(jí)v在一個(gè)表達(dá)式中能夠有各種運(yùn)算符,Java言語(yǔ)規(guī)定了表達(dá)式中出現(xiàn)各種運(yùn)算符的時(shí)候,哪種運(yùn)算符先進(jìn)展運(yùn)算,哪種運(yùn)算符后進(jìn)展運(yùn)算的運(yùn)算符運(yùn)算順序,稱為運(yùn)算符的優(yōu)先級(jí),它指明了同一表達(dá)式中多個(gè)運(yùn)算符被執(zhí)行的次序,同一級(jí)里的操作符具有一樣的優(yōu)先級(jí)。在表達(dá)式中,優(yōu)先級(jí)高的運(yùn)算符先進(jìn)展運(yùn)算。 v2.6.3 結(jié)合性v在表達(dá)式中出現(xiàn)多個(gè)一樣優(yōu)先級(jí)的運(yùn)算符時(shí),就需求思索結(jié)合性。結(jié)合性確定同級(jí)運(yùn)算符的運(yùn)算順序。運(yùn)算符有左結(jié)合性和右
23、結(jié)合性兩種。左結(jié)合性指的是從左向右運(yùn)用運(yùn)算符。例如二元算術(shù)運(yùn)算符具有左結(jié)合性,計(jì)算a + b - c時(shí),操作數(shù)b的左、右運(yùn)算符 +、- 是同級(jí)運(yùn)算符,計(jì)算時(shí),b先與左邊的 + 結(jié)合,計(jì)算a + b,其和再與c相減;而右結(jié)合性是從右向左運(yùn)用運(yùn)算符。例如,賦值運(yùn)算符具有右結(jié)合性,計(jì)算a = b = c時(shí),操作數(shù)b的左、右運(yùn)算符都是同級(jí)的賦值運(yùn)算符,所以,先執(zhí)行b = c,再執(zhí)行a = b。2.7 包裝類wrapper classvJava言語(yǔ)中專門提供了所謂的包裝類wrapper class。這些類將根本類型包裝成類。與根本類型對(duì)應(yīng)的包裝類有Byte 、Short 、Integer 、Long 、
24、Character 、Float 、Double 、Boolean 和Void 。 v運(yùn)用包裝類的方法與其他類一樣,定義對(duì)象的援用、用new運(yùn)算符創(chuàng)建對(duì)象,用方法來(lái)對(duì)對(duì)象進(jìn)展操作。v例如:v Integer i = new Integer(10); v / i 是 Integer類的一個(gè)對(duì)象,值為10v Integer j = new Integer(20);v / j 是 Integer類的一個(gè)對(duì)象,值為20v【例2.8】包裝類Integer類常用方法的運(yùn)用以及與int數(shù)據(jù)進(jìn)展混合運(yùn)算的例子。class UseWrapper public static void main(String ar
25、gs) int num = 2019; System.out.println(num + 的二進(jìn)制是: + Integer.toBinaryString(num); / 轉(zhuǎn)換十進(jìn)制數(shù)為二進(jìn)制數(shù) System.out.println(num + 的八進(jìn)制是: + Integer.toOctalString(num); / 轉(zhuǎn)換十進(jìn)制數(shù)為八進(jìn)制數(shù) System.out.println(num + 的十六進(jìn)制是: + Integer.toHexString(num); / 轉(zhuǎn)換十進(jìn)制數(shù)為十六進(jìn)制數(shù) Integer iobj = Integer.valueOf(123); Integer iobj1
26、= 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); / 比較兩個(gè)對(duì)象能否相等 iobj = iobj + num; / int數(shù)據(jù)和Integer數(shù)據(jù)可以混合運(yùn)算 System.out.println(iobj = + iobj); num = iobj
27、 + num; System.out.println(num = + num); 程序運(yùn)轉(zhuǎn)結(jié)果如下:2019 的二進(jìn)制是: 111110101012019 的八進(jìn)制是: 37252019 的十六進(jìn)制是: 7d5iobj = 123i = 123iobj1=iobj2 ? trueiobj = 2128num = 4133 2.8 輸入輸出初步v2.8.1規(guī)范輸入輸出v1.規(guī)范輸出v(1)print和println方法v可以用System.out.println在程序中可以將常量、變量或表達(dá)式的值輸出到屏幕。println方法可有0個(gè)或1個(gè)參數(shù)。假設(shè)參數(shù)是0個(gè),那么輸出一回車換行,光標(biāo)挪動(dòng)到下一
28、行行首;假 設(shè) 有 一 個(gè) 參 數(shù) , 該 參 數(shù) 可 以 是c h a r , b y t e , i n t , b o o l e a n ,float,double,String,char字符數(shù)組和Object對(duì)象類型的,各種類型的數(shù)據(jù)轉(zhuǎn)換成相應(yīng)的字符串類型輸出。輸出給定一切內(nèi)容后,輸出一個(gè)回車換行。v另外也常用System.out.print進(jìn)展輸出,print方法需求一個(gè)參數(shù)來(lái)輸出,可用的參數(shù)類型與println一樣,輸出參數(shù)的值后不輸出回車換行,因此,假設(shè)輸出內(nèi)容 本 身 不 包 含 控 制 光 標(biāo) 的 內(nèi) 容 或 未 滿 行 ,System.out.print輸出后,光標(biāo)將停留
29、在輸出內(nèi)容后。v(2)printf和format格式輸出方法v要控制輸出數(shù)據(jù)的格式,可運(yùn)用System.out.printf和類似的System.out.format方法,在方法的參數(shù)中對(duì)每一輸出項(xiàng)(表達(dá)式),都可在一個(gè)格式控制字符串中用開場(chǎng)的格式符進(jìn)展格式控制。v例如:vSystem.out.printf(a=%dtb=%ftc=%c,a,b,c);v或:System.out.format(a=%dtb=%ftc=%c,a,b,c);v其中的輸出項(xiàng)為a、b和c三項(xiàng),在格式控制字符串a(chǎn)=%dtb=%ftc=%c中有三個(gè)格式符對(duì)它們進(jìn)展控制,未指出順序時(shí),按照自然順序進(jìn)展格式控制,即:d控制a
30、使其以十進(jìn)制整數(shù)方式輸出;f控制b使其以十進(jìn)制實(shí)數(shù)方式輸出;c控制c使其以字符方式輸出。為了能得到正確輸出的數(shù)據(jù)和格式,不同類型的輸出項(xiàng)應(yīng)運(yùn)用不同的格式符來(lái)進(jìn)展格式控制輸出。適用于根本類型和字符串類型輸出的常用格式符有:vb 布爾型數(shù)據(jù) c 字符vd 十進(jìn)制整數(shù) f 十進(jìn)制實(shí)數(shù)ve或g 科學(xué)記數(shù)法方式的十進(jìn)制實(shí)數(shù) s 字符串v格式控制字符串中的其他字符,無(wú)格式控制功能,輸出時(shí)將按字符原樣輸出。如上例中的a=、b=、c=和t制表符將按原意輸出。v2.規(guī)范輸入v(1)read方法v可以用System.in.read()從鍵盤輸入整數(shù)值在0255之間的byte值int類型。假設(shè)程序運(yùn)轉(zhuǎn)時(shí)需求從鍵盤輸
31、入其他類型的數(shù)據(jù),那么需求運(yùn)用Java提供的輸入/輸出功能。不論需從鍵盤輸入何種類型的數(shù)據(jù),Java從鍵盤接納數(shù)據(jù)都是以字符串的方式進(jìn)展,再根據(jù)實(shí)踐數(shù)據(jù)的需求進(jìn)展類型轉(zhuǎn)換。v運(yùn)用本方法時(shí)要運(yùn)用Java的異常處置機(jī)制。 v【例2.9】從鍵盤輸入一個(gè)字符,并輸出它在Unicode字符集中的前一字符和后一字符。vimport java.io.*; / 引入java.io包vclass CharDemo v public static void main(String args) throws IOException v char c,c1,c2;v c=(char)System.in.read();
32、 / 輸入字符v c1=(char)(c-1);v c2=(char)(c+1);v System.out.println( : + c1);v System.out.println( : + c2);v vv(2)運(yùn)用next方法v假設(shè)運(yùn)用Java提供java.util.scanner類中的各種next方法,可從鍵盤輸入各種根本類型和字符串類型的數(shù)據(jù)。不論需從鍵盤輸入何種類型的數(shù)據(jù),Java從鍵盤接納數(shù)據(jù)都是以字符串的方式進(jìn)展,next方法要根據(jù)輸入數(shù)據(jù)的類型來(lái)選用。有nextByte、nextInt、nextShort、nextLong、nextFloat、nextDouble、nextB
33、oolean和next以空格和回車為終了標(biāo)志的字符串輸入等適用于不同類型數(shù)據(jù)輸入的方法。運(yùn)用next方法進(jìn)展鍵盤輸入的例子如下。v【例2.10】從鍵盤輸入三角形的三個(gè)邊長(zhǎng),求這個(gè)三角形的面積。vimport java.util.Scanner;vclass TriAreav public static void main(String args)v System.out.printf(請(qǐng)輸入三角形的三邊長(zhǎng):n);v Scanner sc = new Scanner(System.in);v double a = sc.nextDouble();v double b = sc.nextDouble();v double c = sc.nextDouble();v do
溫馨提示
- 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 農(nóng)膜使用合同:覆蓋、保鮮、環(huán)保標(biāo)準(zhǔn)
- 1-2《離騷》(教學(xué)設(shè)計(jì))高二語(yǔ)文同步高效課堂(統(tǒng)編版 選擇性必修下冊(cè))
- Flash動(dòng)作補(bǔ)間動(dòng)畫 教學(xué)設(shè)計(jì)
- 公園綠化施工合同書
- 3學(xué)會(huì)反思 教學(xué)設(shè)計(jì)-2023-2024學(xué)年道德與法治六年級(jí)下冊(cè)統(tǒng)編版
- 股份交易合同模板
- 廣告合作合同范本
- 9《屈原列傳》(教學(xué)設(shè)計(jì))-2024-2025學(xué)年高二語(yǔ)文選擇性必修中冊(cè)同步備課系列(教學(xué)設(shè)計(jì)+教學(xué)設(shè)計(jì))(統(tǒng)編版2019)
- 廈門市國(guó)土資源與房產(chǎn)管理局
- 更名補(bǔ)充合同范本
- 新蘇教版一年級(jí)下冊(cè)數(shù)學(xué)第1單元第3課時(shí)《8、7加幾》作業(yè)
- 特殊教育學(xué)校2024-2025學(xué)年度第二學(xué)期教學(xué)工作計(jì)劃
- 寧夏銀川一中2025屆高三上學(xué)期第五次月考數(shù)學(xué)試卷(含答案)
- 2024年物聯(lián)網(wǎng)安裝調(diào)試員(初級(jí)工)職業(yè)資格鑒定考試題庫(kù)(含答案)
- 《設(shè)備科安全培訓(xùn)》課件
- 延長(zhǎng)石油招聘筆試題庫(kù)
- 糖尿病與飲酒
- 【公開課】同一直線上二力的合成+課件+2024-2025學(xué)年+人教版(2024)初中物理八年級(jí)下冊(cè)+
- 建筑安全施工勞動(dòng)保護(hù)考核試卷
- 烹飪工藝與營(yíng)養(yǎng)基礎(chǔ)知識(shí)單選題100道及答案解析
- 磁力聚星星選達(dá)人認(rèn)證考試-初階
評(píng)論
0/150
提交評(píng)論