java程式設計思想筆記 第三章 操作符

2021-08-10 04:37:16 字數 1520 閱讀 6936

char c = 0xffff;//最大字串

byte b = -0x80;//最小位元組型

或byte b = (byte)0x80;

long l = -1;

system.out.println(long.tobinarystring(l));// 64個1

l >>>= 10;

system.out.println(long.tobinarystring(l));// 54個1

int i = -1;

system.out.println(integer.tobinarystring(i));// 32個1

i >>>= 10;

system.out.println(integer.tobinarystring(i));// 22個1

byte b = -1;

// 位元組型-1提公升到整型-1,所以結果為32個1

system.out.println(integer.tobinarystring(b));// 32個1

// b先提公升到int 即在原來8個1前再補24個1,然後無符號右移,再截最後8位並賦值給b

b >>>= 10;

// b會先提公升為int,再運算`

system.out.println(integer.tobinarystring(b));// 32個1

b = -1;

// 不使用 >>>= 時,結果為正確,雖然在執行前b提公升為int,但計算後沒有截斷,直接輸出整型結果

system.out.println(integer.tobinarystring(b >>> 10));// 22個1

/*

* 計算表示式中如果都整型數常量,則計算過程中還是整型,這有可能引起計算

* 溢位問題,但編譯與執行都不會報錯,對於此種情況,在表示式中的某個常量

* 後加上l即可使表示式計算過程中以long型來計算

*/long l = 2147483647 * 2;// -2

l = 2147483647l * 2;// 4294967294

// 編譯執行都不會錯

int i = 2147483647 * 2;// -2

// !! 以下編譯時就出錯

// short s1 = 32767 * 2;

// byte b1 = 127 * 2;

// short s2 = 16384 * 2;

// byte b2 = 64 * 2;

// short s3 = 2147483647 * 3;//乘以奇數就不行,偶數就可以?

// byte b3 = 2147483647 * 3;

// 但下面可編譯執行

short s = 2147483647 * 2;// -2

byte b = 2147483647 * 2;// -2

第三章筆記

第三章預習筆記 一 高階語言和機器指令中的運算 1,按位運算 符號 按位or運算 符號 按位and運算 符號 表示按位not運算 符號 按位xor運算。實現掩碼操作 通過與給定的乙個位模式進行按位與,可以提取所需要的位,對這些位進行 置1 清0 等。2,符號 按位or運算 符號 表示and運算 符號...

程式設計珠璣第三章

第三章寫的有點太簡單了,可能作者是想在後面章節裡再詳細說吧!這一章就是作者說的幾句話印象還是很深刻。程式設計師在節省空間方面無計可施時,將自己從 中解脫出來,退回起點並記者並集 中精力研究資料,常常能有奇效。資料的 表示形式是程式設計的根本。正如人月神話的作者說 只要給我你設計的表,我就對你的程式一...

第三章 函式程式設計

函式是一段具有特定功能的 可重用的語句組,用函式名來表示並通過函式名進行功能呼叫。函式也可以看作是一段具有名字的子程式 特性 1.減少重複 2.使程式變的可擴充套件 3.使程式變得易維護 語法定義 def sayhi 函式名 print hello,i m nobody sayhi 呼叫函式 可以帶...