賦值運(yùn)算符
賦值運(yùn)算符是以符號(hào)“=”表示,它是一個(gè)二元運(yùn)算符(對(duì)兩個(gè)操作數(shù)作處理),其功能是將右方操作數(shù)所含的值賦值給左方的操作數(shù)。其語(yǔ)法格式如下:
變量 = 表達(dá)式;
例如:inta = 100;
該表達(dá)式是將100賦值給變量a。左方的操作數(shù)必須是一個(gè)變量,而右邊的操作數(shù)則可以是任何表達(dá)式,包括變量(如a、number)、常量(如123、'book')、有效的表達(dá)式(如45*12)。例如:
例使用賦值運(yùn)算符為變量賦值,實(shí)例代碼如下:
inta = 10; //聲明int型變量a
intb = 5; //聲明int型變量b
intc = a+b; //將變量a與b進(jìn)行運(yùn)算后的結(jié)果賦值給c
遵循賦值運(yùn)算符的運(yùn)算規(guī)則,可知系統(tǒng)將先計(jì)算a+b的值,結(jié)果為15。然后將15賦值給變量c。因此“c=15”。
例在項(xiàng)目中創(chuàng)建類(lèi)Eval,在主方法中定義變量,使用賦值運(yùn)算符為變量賦值。
publicclassEval { //創(chuàng)建類(lèi)
publicstaticvoidmain(String args) { //主方法
inta, b, c; //聲明int行變量a,b,c
a = 15; //將15賦值給變量a
c = b = a + 4; //將a與4的和賦值給變量b,然后再賦值給變量c
System.out.println('c值為:' + c); //將變量c的值輸出
System.out.println('b值為:' + b); //將變量b的值輸出
}
}
運(yùn)行結(jié)果如圖1所示。
圖1 運(yùn)行結(jié)果
表1 復(fù)合賦值運(yùn)算符
算術(shù)運(yùn)算符
Java中的算術(shù)運(yùn)算符主要有+(加號(hào))、—(減號(hào))、*(乘號(hào))、/(除號(hào))、%(求余),它們都是二元運(yùn)算符。Java中算術(shù)運(yùn)算符的功能及使用方式如表1所示。
表1.Java算術(shù)運(yùn)算符
其中“+”和“-”運(yùn)算符還可以作為數(shù)據(jù)的正負(fù)符號(hào),例如+5,-7。
下面通過(guò)一個(gè)小程序來(lái)介紹使用算術(shù)運(yùn)算符的方法。
例在項(xiàng)目中創(chuàng)建類(lèi)Arith,在主方法中定義變量,使用算術(shù)運(yùn)算符將變量的計(jì)算結(jié)果輸出。
publicclassArith { //創(chuàng)建類(lèi)
publicstaticvoidmain(String args) { //主方法
floatnumber1 = 45.56f; //聲明float型變量并賦值
intnumber2 = 152; //聲明int型變量并賦值
System.out.println('和為:' + number1 + number2); //將變量相加之和輸出
System.out.println('差為:' + (number2 - number1)); //將變量相減之差輸出
System.out.println('積為:' + number1 * number2); //將變量相乘的積輸出
System.out.println('商為:' + number1 / number2); //將變量相除的商輸出
}
}
運(yùn)行結(jié)果如圖1所示。
圖1 運(yùn)行結(jié)果
在應(yīng)用算術(shù)運(yùn)算符時(shí),可以分為對(duì)整型數(shù)據(jù)的運(yùn)算和對(duì)浮點(diǎn)型數(shù)據(jù)的運(yùn)算,下面進(jìn)行詳細(xì)介紹。
1.整型數(shù)據(jù)的算術(shù)運(yùn)算
整型數(shù)據(jù)的“+”、“-”、“*”、的運(yùn)算與數(shù)學(xué)中的運(yùn)算相同,這里不再介紹,下面介紹整型數(shù)據(jù)間的“/”和“%”運(yùn)算。
l 整數(shù)的除法(運(yùn)算符“/”)運(yùn)算
當(dāng)整數(shù)間進(jìn)行除法運(yùn)算時(shí),其結(jié)果將舍棄小數(shù)部分,并且忽略四舍五入,最終的結(jié)果為商的整數(shù)部分,所以通過(guò)計(jì)算機(jī)來(lái)計(jì)算“5/3*3”與“5*3/3”的結(jié)果是不同的,前者為3,而后者為5。
例在項(xiàng)目中創(chuàng)建類(lèi)Arith1,在主方法中定義變量,使用“/”運(yùn)算符進(jìn)行除法運(yùn)算,并輸出計(jì)算結(jié)果。
publicclassArith1 {
publicstaticvoidmain(String args) { // 主方法
inti1 = 7 / 3; // 在數(shù)學(xué)計(jì)算中其結(jié)果約為2.33
inti2 = 11 / 3; // 在數(shù)學(xué)計(jì)算中其結(jié)果約為3.67
inti3 = -7 / 2; // 在數(shù)學(xué)計(jì)算中其結(jié)果為-3.5
inti4 = 0 / 9;
System.out.println('7/3=' + i1); // 輸出結(jié)果為:2
System.out.println('11/3=' + i2); // 輸出結(jié)果為:3
System.out.println('-7/2=' + i3); // 輸出結(jié)果為:-3
System.out.println('0/9=' + i4); // 輸出結(jié)果為:0
}
}
運(yùn)行結(jié)果如圖2所示。
圖2 運(yùn)行結(jié)果
l 整數(shù)的求余(運(yùn)算符“%”)運(yùn)算
當(dāng)整數(shù)間進(jìn)行求余運(yùn)算時(shí),其運(yùn)算結(jié)果為整數(shù)除法運(yùn)算后的余數(shù)。
例在項(xiàng)目中創(chuàng)建類(lèi)Arith2,在主方法中定義變量,使用“%”運(yùn)算符進(jìn)行求余運(yùn)算,并輸出計(jì)算結(jié)果。
publicclassArith2 {
publicstaticvoidmain(String args) { // 主方法
inti1=11%4; //結(jié)果為:3
inti2=8%4; //結(jié)果為:0
inti3=9%10; //結(jié)果為:9
inti4=-7%3; //結(jié)果為:-1
inti5=0%9; //結(jié)果為:0
System.out.println('11%4='+i1);
System.out.println('8%4='+i2);
System.out.println('9%10='+i3);
System.out.println('-7%3='+i4);
System.out.println('0%9='+i5);
}
}
運(yùn)行結(jié)果如圖3所示。
圖3 運(yùn)行結(jié)果
l 將一個(gè)整數(shù)除以0或除以0求余的運(yùn)算
當(dāng)進(jìn)行一個(gè)整數(shù)除以0或除以0求余運(yùn)算時(shí),雖然可通過(guò)編譯,但在運(yùn)行時(shí)會(huì)拋出java.lang.ArithmeticException異常,例如:
publicstaticvoidmain(String args) { // 主方法
inti1=11/0; //編譯成功,但運(yùn)行時(shí)拋出異常
inti2=9%0; //編譯成功,但運(yùn)行時(shí)拋出異常
System.out.println(i1);
System.out.println(i2);
}
以上代碼運(yùn)行時(shí)拋出如圖4所示的異常。
聯(lián)系客服