程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> Java編程那些事兒24—賦值運算符

Java編程那些事兒24—賦值運算符

編輯:關於JAVA

4.4 賦值運算符

賦值運算符是指為變量或常量指定數值的符號。最基本的賦值運算符是“=”。

由於Java語言是強類型的語言,所以賦值時要求類型必須匹配,如果類型不匹配時需要能自動轉換為對應的類型,否則將報語法錯誤。示例代碼:

byte b = 12;   //類型匹配,直接賦值
int n = 10;    //類型匹配,直接賦值
double d = 100;//類型不匹配,系統首先自動將100轉換成100.0,然後賦值
char c = -100;  //類型不匹配,無法自動轉換,語法錯誤

需要強調的是,只能為變量和常量賦值,不能為運算式賦值,例如:

int a = 10;
int b = 2;
a + b = 100;//不能為運算式a + b賦值,語法錯誤

常量只能賦值一次,否則也將出現語法錯誤,例如:

final int N = 10;
N = 20;//常量只能賦值一次,語法錯誤

在基本的賦值運算符基礎上,可以組合算術運算符,以及後續將學習的位運算符,從而組成復合賦值運算符。賦值運算符和算術運算符組成的復合賦值運算符如下表4-4所示。

表4-4 復合賦值運算符

符號 名稱 功能說明 += 加等 把變量加上右側的值然後再賦值給自身 -= 減等 把變量減去右側的值然後再賦值給自身 *= 乘等 把變量乘以右側的值然後再賦值給自身 /= 除等 把變量除以右側的值然後再賦值給自身 %= 取余等 把變量和右側的值取余然後再賦值給自身

實際使用示例:

int n = 2;
n += 3;

說明:計算以前n的值是2,也就是把n + 3的值,也就是5再賦值給n,經過運算以後n的值為5,因為該代碼只執行一次,所以不會導致循環。

依次類推,其它的復合賦值運算符也是這樣:

int n = 10;
n -= 2;//則n的值是8
n *= 3;//因為n的初值是8,則n運算後的結果是24
n /= 5;//因為n的初值是24,則n運算後的值是4

注意:復合賦值運算不會改變結果的類型,所以在有些時候運算在邏輯上會出現錯誤,但是符合計算中數值的表述。例如:

byte b = 127;
b += 1;
System.out.println(b);

根據前面的介紹,byte類型的取值區間是-128~127,由於復合賦值運算符不改變結果的類型,則導致結果是-128,而不是128。原因如下:

lbyte類型值127的機器數是01111111,0表示正數,後續的數值表示127

l該數值加1後,得到的數值是10000000,二進制加法

l而10000000在byte類型中恰好是-128的機器數表示形式

其它類型的符合運算符也可能存在類似的情況,使用時需要注意。

文章來源:http://blog.csdn.net/Mailbomb/archive/2008/05/23/2473815.aspx

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved