1. 變量字節大小及有效值範圍
byte佔用一個字節,-2^7~(2^7)-1(byte給char需要強制類型轉換)
short佔用兩個字節,-2^15~(2^15)-1
int佔用四個字節,-2^31~(2^31)-1
long佔用八個字節,-2^63~(2^62)-1 5L
float佔用四個字節,f/F,如11f
double佔用八個字節 5.2d
char佔用兩個字節
boolean佔用四個字節
byte(short)加、減(及其他操作)byte(short)值會提升類型成爲int,賦值時不能越界。byte類型不能用b=b+1,但可以用b++。
byte類型加、減short結果爲short
string s=a+b+c+"abc"+a+b;//字符串前按數值類型算,之後按字符串算,後邊加括號可改變優先級。
2.命名規則
類名首字母大寫;
並且多個單詞情況下,每個單詞首字母大寫;
public類名必須與文件名相同
3.基本運算:+、-、*、/、%、++、--
求模運算的符號與被取模的數符號保持一致(整數不能[報錯]模0,浮點數可以結果爲non[不知道])
自增和自減只可以操作變量,不可以操作常量。錯誤:++5、5++
^運算符:相同爲false,不同爲true
|| 、&&: 與&和|相比有短路的特點
/:除法:int/int=int ,整數不能除0;浮點數可以除0,結果爲無窮大
==:==對對象進行處理時,同一對象爲true,否則爲false
? : :例 int a=12>15?10:10L【L表示爲long類型】會編譯出錯,返回值類型爲兩個中較大的類型
byte b=12>15?10:20 編譯出錯,但 byte b=12>15?10:(byte)20 通過,因爲裏邊的10可視爲通過int賦值的byte
如果兩個可能選項爲對象類型,則返回類型應爲最小公共父類
s = 6+b+"abc"+x+y;//編譯出錯,因爲加法是左結合性。
float f = 5*2.0;//編譯出錯,浮點數(2.0)若無特別強調默認爲double類型
加法可用於數字和字符串的連接,被賦值的應爲字符串常量
字符串可以和任意類型串聯(+)
---------------------------------------------------------------------
邏輯運算符:
boolean b1 = f&&(x++>10); // *&&、|| 與&和|相比有短路的特點,即x++不再執行。
---------------------------------------------------------------------
位運算符:&、|、^、~:把數字變換成二進制後再進行相應位的運算
&兩個都爲1才爲1
兩個都爲0才爲0
^相同爲0
~取反
正數的原碼、反碼、補碼均相同
負數的反碼:爲符號位不變,其餘各位取反
負數的補碼:反碼加1
------------------------------------------------------------------------
移位運算符:(算數左右移)<<、>>、(無符號右移)>>>
<<1相當於除2(int類型<<32結果不變)
>>1相當於乘2
>>>1高位補0,低位捨去。