Java筆試題:最有效率的方法算出2乘以8等於幾?
這道題的解法:2<<3; 表示 2向左移 3位:2 * 2^3(2的3次方) = 2 * 8;
因為一個數左移 n位,就相當於 2的 n次方,那麼一個數乘以 8只要將其左移 3位即可,而為運算子的效率最高,所以 2乘以 8等於幾的最有效方法是 2<<3。
擴充套件資料:
左移運算子:
用來將一個數的各二進位制位全部左移若干位。因為位運算比×運算快,所以可對以下程式碼進行優化,還可利用左移運算子計算a的第b個二進位制位是什麼。
運算規則:
按二進位制形式把所有的數字向左移動對應的位數,高位移出(捨棄),低位的空位補零。
語法格式:
需要移位的數字 << 移位的次數
例如: 3 << 2,則是將數字3左移2位
計算過程:
3 << 2 首先把3轉換為二進位制數字0000 0011,然後把該數字高位(左側)的兩個零移出,其他的數字都朝左平移2位,最後在低位(右側)的兩個空位補零。則得到的最終結果是0000 1100,則轉換為十進位制是12。
數學意義:
在數字沒有溢位的前提下,對於正數和負數,左移一位都相當於乘以2的1次方,左移n位就相當於乘以2的n次方。
相關推薦
Java筆試題:最有效率的方法算出2乘以8等於幾?
這道題的解法:2<<3; 表示 2向左移 3位:2 * 2^3(2的3次方) = 2 * 8; 因為一個數左移 n位,就相當於 2的 n次方,那麼一個數乘以 8只要將其左移 3位即可,而為運算子的效率最高,所以 2乘以 8等於幾的最有效方法是 2<<3。 擴充套件資料
java面試題之用最有效率的方法算出2乘以8等於幾
這是網上流傳的"變態級JAVA程式設計師面試32問"的其中一題(二十八題),然後下面給出來的答案是 第二十八,程式設計題: 用最有效率的方法算出2乘以8等於幾? 有C背景的程式設計師特別喜歡問這種問題。 2 << 3 粗看似乎很在理,大致想來2<&l
最全的Java筆試題庫之選擇題篇-總共234道【181~234】
abc 出現 最全的 context nav oschina 服務器 可行性 配置管理 181.下列沒有直接采用XML技術的是( ) A. UDDI B. SOAP C. AJAX D.DCOM 解答:D DCOM(分布式組件對象模型,分布式組件對象模式)是一系列微軟的概念
java筆試題:找出3~999的水仙花數的三種實現方式
style col 展示 ava num get 實現 sys pack 第一種方式: package test; public class Exsercise { public static void main(String[] args) {
最全的Java筆試題庫之選擇題篇-總共234道【61~120】
61.關於sleep()和wait(),以下描述錯誤的一項是( ) A. sleep是執行緒類(Thread)的方法,wait是Object類的方法; B. sleep不釋放物件鎖,wait放棄物件鎖; C. sleep暫停執行緒、但監控狀態仍然保持
java常見面試題——java筆試題總結
title bean hash strong 程序 面試題 瓶頸 factor 集合 註:本文轉載自http://www.cnblogs.com/huajiezh/p/5790928.html,版權歸其所有! Java常見面試題總結 一、Java基礎 1、String
Java筆試題之《Java代碼查錯》
gin 參數 eth string oid java筆試題 protected -s 構造 Java代碼查錯 1.abstract class Name { private String name; public abstract boolean isStupidN
Java筆試題之《ejb部分》
例如 java api 發包 bsp tel 比較 eth 事務管理 網絡協議 ejb部分 1、EJB是基於哪些技術實現的?並說出SessionBean和EntityBean的區別,StatefulBean和StatelessBean的區別。 EJB包括Sessi
java筆試題
bstr 同時 構造器 loader 引用傳遞 應該 provide key-value ack 一、Java基礎 1、作用域public,private,protected,以及不寫時的區別 答:區別如表格所示: 作用域 當前類 相同package 子孫類 其他pa
2018年網易Java筆試題
特性 stat 歷史 是否 構造方法 final類 sdl 最終 子類 2018年網易Java筆試題 OOP三特性 封裝: 繼承: 多態: Java中如何實現多繼承 實現多個接口 使用內部類 Java對象生成過程 4.HashTable和HashMap的
用最有效率的方法計算2乘以8?
我們 運算 lean tcl != ref override line area 2 << 3(左移3位相當於乘以2的3次方,右移3位相當於除以2的3次方)。 補充:我們為編寫的類重寫hashCode方法時,可能會看到如下所示的代碼,其實我們不太理解為什麽要
Java筆試題(3)
scan abd bst spl 輸出 rst != first adf /** * 輸入: * safab qeabd abdfe (以空格隔開) * ab * 輸出ab出現的次數並逆序輸出含有ab的字符串 * 輸出: * 3 * a
Java筆試題(2)
spl res new void scan system.in lin () static /** * 一個物體從高h處下落,下落後會反彈到離地面高上一次下降高度的1/2,求當第m次接觸地面時走過路徑的長度 * 輸入: * 100,1
Java筆試題(5)
stat 裏的 pre 做的 靜態 string main clas 答案 class Test{ int getValue(){ static int i=0; i++; return i; } p
Java筆試題:給定一個ReadOnlyClass的對象roc,能否把這個對象的age值改成30?
acc 資料 謝謝 ble 技術 set exce turn 宋體 在Java筆試面試中,經常會遇到代碼題,今天我們就來看一則Java代碼筆試題。 有如下代碼: Class ReadOnlyClass { private Intege
java筆試題:隨機生成一個4位數字的年號,判斷是否是閏年?
技術 ring ima color 一個 sta string == pub 老規矩,直接上代碼: /** * 隨機生成一個4位數的年號,判斷概念是否為閏年並輸出相應的信息。 */ public static void LeapYear
java筆試題:判斷一個3~100之間的所有的素數?
java筆試題 int 打印 () als 註意 分享圖片 技術 sqrt 註意兩點:① 什麽是素數?② 如何利用計算機的方法去解決問題? public static void NumberDemo(){ int x = 0; System
java筆試題的筆記(手寫,待更新)
方法 更新 ofo illegal const blank private and prot 1、 String str=new String("abc"); 緊接著這段代碼之後的往往是這個問題,那就是這行代碼究竟創建了幾個String對象呢? 2個。 2、
C++筆試題 最長公共子串
最長公共子串 描述 給出兩個字串,找到最長公共子串,並返回其長度。 輸入描述 輸入兩個任意長度的英文字串 輸出描述 返回公共字串的長度 樣例輸入 1 A=“ABCD”,B=“CBCE” 樣例輸出 1 2 #include <iostrea
Java筆試題(三)——執行緒安全、String、StringBuffer、StringBuilder
1.什麼是執行緒安全? 簡單地說法:執行緒安全可以簡單理解為一個方法或者一個例項可以在多執行緒環境中使用而不會出現問題。 複雜的說法:當多個執行緒訪問同一個物件時,如果不用考慮這些執行緒在執行時環境下的排程和交替執行,也不需要進行額外的同步,或者在呼叫方進行任何其他的協調操作,呼叫這個物件的