要注意區別++在變數前還是在變數後,兩種情況的結果不同。
int m = 6;
int n = 6;
int a = 2 * ++m; 注釋now a is 14,m is 7
int b = 2 * n++; 注釋now b is 12,n is 7
可以在賦值語句中採用一種簡化的格式書寫二元算數運算子:x += 4;等價於 x = x + 4;(通常,將運算子寫在賦值符的左側,如 *= 或 %=)
單目運算子包括!~ ++ --優先級別高
賦值運算子優先級別最低
可以通過()控制表示式的運算順序,()優先級別最高
從右向左結合性的只有賦值運算子、三目運算子和單目運算子
算數運算子》關係運算子》邏輯運算子
自動型別轉換:兩種數值型別要相容;目標型別大於源型別(short——>int——>long——>float——>double)
強制型別轉換:大型別轉小型別,語法:(想要轉換的型別名)待轉換的變數名。例 double x =8.987; int nx = (int) x; 如想對浮點型進行捨入計算,得到最接近的整數,需用math.round方法。
接收使用者的輸入
字串:
system.out.print("品牌1:");
string brand1 = input.next(); next遇回車、空格截斷
system.out.print("品牌2:");
string brand2 = input.nextline(); next讀整行
整型:int count = input.nextint ( );
浮點:float count = input.nextfloat ( );
char型:
system.out.prrint("性別:");
char *** = input.next().charat(0);
system.out.prrintln("性別:" + ***);
注釋:因為輸入時可見的,所以scanner類不適用於從控制台讀取密碼。console類可以實現讀取密碼,為安全起見,返回的密碼存放在一維字元陣列中,而不是字串中。在對密碼進行處理後,應馬上用乙個填充值覆蓋陣列元素。console每次只能讀取一行輸入,而沒有能夠讀取乙個單詞或乙個數值的方法:
console cons = system.console();
string username = cons.readline("user name: ");
char passwd = cons.readpassword("password: ");
格式化輸出system.out.print(x); 將以x對應的資料型別所允許的最大非0數字位列印輸出x。
system.out.printf("hello, %s . next year,you'll be %d", name, age); 每乙個以%字元開始的格式說明符都用相應的引數替換。格式說明符尾部的轉換符將指示被格式化的數值型別。
檔案的輸入與輸出
要想對檔案進行讀取,需用file物件構造乙個scanner物件:scanner in = new scanner(paths.get("myfile.txt")); 如果檔名包含反斜槓,則每個反斜槓前需再加乙個反斜槓:"c:\\mydirectory\\myfile.txt",然後可以就利用scanner方法對檔案進行讀取。
要寫入檔案,需構造乙個printwriter物件。在構造器中,只需提供檔名:printwriter out = new printwriter(「myfile.txt」);如果檔案不存在,建立該檔案。可以像輸出到system.out一樣使用print、println、printf。
JAVA學習筆記3 運算子
與c 一致,有 和 與c 一致,除號運算自動識別整數除法。與c 一致,關係運算子為 等。位運算為 異或 和 非 支援 和 兩種移位運算。邏輯運算子 和 都具有 短操作 特性,即在使用 時,若左側已經為假,那麼右側將不執行。在使用 時,若左側已經為真,那麼右側將不執行。賦值運算與c 一致。提供?運算。...
JAVA學習筆記 二 運算子
變數的宣告和賦值 變數的宣告和賦值 public class test 常量 常量 public class test 交換變數 交換兩個變數的值的方法 public class test 字串拼接 字串拼接 區分哪些是可變的,哪些是不可變的,不可變的放入 內,可變的通過 連線 public cla...
JAVA學習筆記 TWO(運算子)
1.運算子 public static void main string args 數 算符 int a 8 int b 4 system.out.println a 2 system.out.println a b 兩個整數相除如果不能整除取,取的是商 system.out.println a b...