回覆列表
  • 1 # 使用者928021938244

    所有一元運算子(如運算子)都按照下面的規則來計算表示式的值:

    如果應用於未定義的表示式或null表示式,則會引發一個執行時錯誤。

    將物件轉換為字串。

    如果可能,將字串轉換為數字。否則,將引發執行時錯誤。

    布林值被視為數字(如果為false,則為0;如果為true,則為1)。

    運算子將應用於結果數字。

    運算子查看錶達式的二進位制表示形式的值,並執行位非運算。

    表示式中的任何一位為1,則結果中的該位變為0。表示式中的任何一位為0,則結果中的該位變為1。

  • 2 # 情Q隨緣

    比如說byte型別的5,在記憶體中是00000101,按位取反後就是11111010

    當你再次輸出這個數時就變成了250

    按位取反就是1變0,0變1

    首先你要知道現在我們用的多數都是32位機,所以整形數都是4個位元組

    那麼再看看按位取反的結果:

    00000000 00000000 00000000 00000101 這是5

    00000000 00000000 00000000 00000000 這是0

    11111111 11111111 11111111 11111111 這是-1

    11111111 11111111 11111111 11111110 這是-2

    11111111 11111111 11111111 11111101 這是-3

    11111111 11111111 11111111 11111100 這是-4

    11111111 11111111 11111111 11111011 這是-5

    11111111 11111111 11111111 11111010 這是5取反的結果-6

    看懂了嗎?

  • 中秋節和大豐收的關聯?
  • 對國寶兵馬俑在美國展出被折斷手指偷走,你怎麼看?