java基礎:位移運算子
說說這倆個:
<< 左移
>> 右移
1.x << y 意思是x向左移動了y個.一般結果是x乘以2的y次方.
如: 5 << 3 = 40
0000 0101 = 5
0010 1000 = 32 + 8 = 40 = 5 * 2^3
2. x >>y意思是x向右移動了y個.一般結果是x除以2的y次方.
如 12 >>2 = 3
0000 1100 = 12
0000 0011 = 3 = 12/(2^2)
但是 位移超出邊界 會怎麼樣呢?
如:5<<5 按理說等於5*2^5 = 160但是已經超出了byte的範圍了.
0000 0101
1010 0000
這個結果看出已經是負數-96了.
但實際上不是這樣.因為位移運算子預設的是用int來位移的.
byte 5 首先變成了int 5
0000 0000 | 0000 0000 | 0000 0000 | 0000 0101
0000 0000 | 0000 0000 | 0000 0000 | 1010 0000 = int 160
相關推薦
java基礎:位移運算子
說說這倆個: << 左移 >> 右移 1.x << y 意思是x向左移動了y個.一般結果是x乘以2的y次方. 如: 5 << 3 = 40 0000 0101 = 5 0010 1000 = 32 + 8
JAVA基礎-3.運算子,鍵盤錄入,if語句
1:運算子(掌握) (1)算術運算子 A:+,-,*,/,%,++,– B:+的用法 a:加法 b:正號 c:字串連線符
【java基礎】++ -- 運算子詳解
++ -- 運算子詳解 ## 關於自增自減運算的問題《java程式設計思想》中是這樣說的: a、(i++,i--)運算子在運算元後面,先賦值,再運算 b、(++i, --i)運算子在運算元前面,先運算,再賦值 例: int i = 1; System.out.println(i-- - ++
java基礎之--運算子號
算數運算子 + 可以作為單目運算子,表示正值 - 可以作為單目運算子,表示負值 * 可以作為單目運算子,表示乘積 / 在使用時注意分母不能為0 % 求餘操作 比較運算子 > , < , >=, <
Java基礎語法 運算子
java中運算子分為 算術運算子、賦值運算子、比較運算子、邏輯運算子、位運算子、三目運算子 1、算術運算子 +、 -、 *、 /、 %、 ++、 – 用法:5/2=2 、 5.0/2.0=2.5 、 5%2=1、 -5%2=-1、5%-1=1(當後面的數是負數的時候,前面的符號忽略) b
java基礎知識——運算子
public static void main(String[] args) { //三元運算子 System.out.println(3>2?"正確":"錯誤"); String str="中國" } public static void main(String[] arg
Java基礎之 運算子
前言:Java內功心法之運算子,看完這篇你向Java大神的路上又邁出了一步(有什麼問題或者需要資料可以聯絡我的扣扣:734999078) 計算機的最基本用途之一就是執行數學運算,作為一門計算機語言,Java也提供了一套豐富的運算子來操縱變數。我們可以把運算子分成以下幾組: 算術運算子
Java的位移運算子
接觸java有三年了,工作也快半年了,今天在寫程式碼的時候碰到了java的位移運算子,於是又重新好好學習了一遍。 “>”,“>>”,“>>>”這三個運算子當中後面的
Java基礎篇運算子與if判斷
這裡是昨天未講完的內容!接上一天! 9.Java的運算子算術運算子:+ - * / % ++ --/ 除號右邊不能為0++自增i++-->i=i+1;--自減i--;-->i=i-1;++i/--i;參與運算時 先自增 再運算 class Demo_1 {
1.Java基礎之識別符號命名法、八大基本資料型別三大引用型別、運算子以及程式分支結構、方法的定義過載遞迴
一、基礎匯入: 1.java採用Unicode編碼,16進位制編碼,支援世界上所有語言(GBK,gb2312,Unicode,UTF-8,ISO-8859-1)。 多執行緒---> c-編譯型語言 Test.java--原始檔,原始檔必須與主類名(public class Test
java基礎第九篇 運算子的優先順序
所謂優先順序,就是在表示式中的運算順序。Java 中常用的運算子的優先順序如下表所示: 優先順序 運算子 1 () 2 !+(正) -(負) ++ -- 3 * / % 4 +(加)-(減少) 5 < <= >
java基礎第九篇 條件運算子(三元運算子)
條件運算子( ? : )也稱為 “三元運算子”。 語法形式:布林表示式 ? 表示式1 :表示式2 運算過程:如果布林表示式的值為 true ,則返回 表示式1 的值,否則返回 表示式2 的值 例子如下: packa
java基礎第八篇 邏輯運算子
邏輯運算子 名稱 例子 結果 && 與 a&&b 如果a&&b都為true,則返回true || 或 a||b 如果a||b任一為true,則返回true ! 非
java基礎第七篇 比較運算子
比較運算子 名稱 舉例 結果 > 大於 a=5;b=2;a>b; true < 小於 a=5;b=2;a<b; false >= 大於等於 a=5;a>=3
關於Java基礎的複習總結(二)運算子與控制結構&程式設計師節的留影
大夢誰先覺,平生我自知。 每次醒來之後,說一句,感覺自己要去拯救蒼生,哈哈。 末尾放上程式設計師節的照片,帶人的就不放了,醜(* ̄rǒ ̄)。 1、變數的宣告和賦值 資料型別 變數名=值; 2、型別轉換 自動型別轉換 強制型別轉換 byte short int long float
Java基礎篇之常量、變數、運算子
資料型別 : Java中的基本型別功能簡單,不具備物件的特性,為了使基本型別具備物件的特性,所以出現了包裝類,就可以像操作物件一樣操作基本型別資料。 基本型別對應的包裝類 基本型別 byte int short long float double boolean char 包裝型別
JAVA基礎(12)---運算子
Java中的運算子 算術運算子 + 加 - 減 &
Java基礎語法 - 三元運算子
1 package com.demo2; 2 3 /* 4 * 三元運算子: 5 * 關係表示式 ? 表示式1 : 表示式2 6 * 7 * 執行流程: 8 * A: 計算關係表示式的值,看是true還是false 9 * B: 如果是true,表
Java基礎之賦值運算子
賦值運算子的作用就是將常量、變數或表示式的值賦給某一個變數。 在Java中可以通過一條賦值語句對多個變數進行賦值。 int x, y, z; x = y = z = 5; //為三個變數同時賦值 int x = y = z =5; //這樣寫是錯誤的
Java基礎之算術運算子
在進行自增(++)和自減(--)的運算時,如果運算子(++或--)放在運算元的前面則是先進行自增或自減運算,再進行其它運算。反之,如果運算子放在運算元的後面則是先進行其它運算再進行自增或自減運算。 int a = 1; int b