欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java 判斷一個(gè)數(shù)是否為2的整數(shù)次冪方法

 更新時(shí)間:2018年07月14日 09:47:22   作者:夙彧  
今天小編就為大家分享一篇java 判斷一個(gè)數(shù)是否為2的整數(shù)次冪方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

當(dāng)不考慮負(fù)數(shù)時(shí),對(duì)于此題分析可知,當(dāng)輸入值小于1時(shí),此數(shù)肯定不是2的整數(shù)次冪。

當(dāng)輸入值大于一時(shí),我們可以發(fā)現(xiàn)一個(gè)規(guī)律。2的整數(shù)次冪用二進(jìn)制表示為:

2d = 10b;  4d = 100b; 8d = 1000b

二進(jìn)制首位為一,其余各位均為零。

所以我們可以通過(guò)判斷輸入值轉(zhuǎn)換為二進(jìn)制時(shí)首位為一,其余各位為0,這樣就能保證輸入值為2的整數(shù)次冪。

但是這樣做又過(guò)于繁瑣,我們可以只判斷二進(jìn)制數(shù)中最后一次出現(xiàn)“1"的位置,使用String,lastIndexOf();方法即可。

而且我們還可以發(fā)現(xiàn)此規(guī)律同樣適用于輸入1的情況。

那么簡(jiǎn)潔的代碼就這樣產(chǎn)生了。

public static boolean isPowerOfTwo(int n) {
		String str = Integer.toBinaryString(n);
		if(n < 1)
			return false;
		else if(str.lastIndexOf("1") == 0)
			return true;
		else
			return false;
  }

以上這篇java 判斷一個(gè)數(shù)是否為2的整數(shù)次冪方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java 超詳細(xì)講解異常的處理

    Java 超詳細(xì)講解異常的處理

    異常就是不正常,比如當(dāng)我們身體出現(xiàn)了異常我們會(huì)根據(jù)身體情況選擇喝開(kāi)水、吃藥、看病、等 異常處理方法。 java異常處理機(jī)制是我們java語(yǔ)言使用異常處理機(jī)制為程序提供了錯(cuò)誤處理的能力,程序出現(xiàn)的錯(cuò)誤,程序可以安全的退出,以保證程序正常的運(yùn)行等
    2022-04-04
  • 代理角色java設(shè)計(jì)模式之靜態(tài)代理詳細(xì)介紹

    代理角色java設(shè)計(jì)模式之靜態(tài)代理詳細(xì)介紹

    查了好多資料,發(fā)現(xiàn)還是不全,干脆自己整理吧,至少保證在我的做法正確的,以免誤導(dǎo)讀者,也是給自己做個(gè)記錄吧!
    2013-05-05
  • Java集合ArrayDeque類實(shí)例分析

    Java集合ArrayDeque類實(shí)例分析

    這篇文章主要介紹了Java集合ArrayDeque類實(shí)例分析的相關(guān)資料,需要的朋友可以參考下
    2017-04-04
  • java實(shí)現(xiàn)哈夫曼壓縮的實(shí)例

    java實(shí)現(xiàn)哈夫曼壓縮的實(shí)例

    這篇文章主要介紹了java實(shí)現(xiàn)哈夫曼壓縮的實(shí)例的相關(guān)資料,需要的朋友可以參考下
    2017-07-07
  • Struts 2中的constant配置詳解

    Struts 2中的constant配置詳解

    通過(guò)對(duì)這些屬性的配置,可以改變Struts 2 框架的一些默認(rèn)行為,這些配置可以在struts.xml文件中完成,也可以在struts.properties文件中完成
    2016-09-09
  • 解決Mybatis-Plus操作分頁(yè)后數(shù)據(jù)失效問(wèn)題

    解決Mybatis-Plus操作分頁(yè)后數(shù)據(jù)失效問(wèn)題

    這篇文章主要介紹了解決Mybatis-Plus操作分頁(yè)后數(shù)據(jù)失效問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-11-11
  • maven多模塊工程打包部署的方法步驟

    maven多模塊工程打包部署的方法步驟

    本篇文章主要介紹了maven多模塊工程打包部署的方法步驟,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-10-10
  • Lombok使用@Tolerate實(shí)現(xiàn)沖突兼容問(wèn)題

    Lombok使用@Tolerate實(shí)現(xiàn)沖突兼容問(wèn)題

    這篇文章主要介紹了Lombok使用@Tolerate實(shí)現(xiàn)沖突兼容問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • 教你用Springboot實(shí)現(xiàn)攔截器獲取header內(nèi)容

    教你用Springboot實(shí)現(xiàn)攔截器獲取header內(nèi)容

    項(xiàng)目中遇到一個(gè)需求,對(duì)接上游系統(tǒng)是涉及到需要增加請(qǐng)求頭,請(qǐng)求頭的信息是動(dòng)態(tài)獲取的,需要?jiǎng)討B(tài)從下游拿到之后轉(zhuǎn)給上游,文中非常詳細(xì)的介紹了該需求的實(shí)現(xiàn),需要的朋友可以參考下
    2021-05-05
  • java虛擬機(jī)是做什么用的

    java虛擬機(jī)是做什么用的

    在本篇文章里小編給大家整理的是一篇關(guān)于java虛擬機(jī)作用等相關(guān)內(nèi)容,對(duì)此有興趣的朋友們可以學(xué)習(xí)參考下。
    2021-01-01

最新評(píng)論