教程|Java Integer類內置方法

2021-03-02 尚學堂java培訓

Java 中Integer是int的派生類型,內置了一些常用的對int類型數據的處理方法,下面對其簡單的分析。

1、String toBinaryString(int i) 給定一個int類型數據,返回這個數據的二進位字符串。

示例:

intx=1;  

int y=2;  

int z=3;  

System.out.println(x+"的二進位表示為:"+Integer.toBinaryString(x));  

System.out.println(y+"的二進位表示為:"+Integer.toBinaryString(y));  

System.out.println(z+"的二進位表示為:"+Integer.toBinaryString(z)); 

運行結果為:

1的二進位表示為:1  

2的二進位表示為:10  

3的二進位表示為:11

2、int bitCount(int i) 給定一個int類型數據,返回這個數據的二進位串中「1」的總數量。

示例:

int x=1;  

int y=2;  

int z=3;  

System.out.println(x+"的二進位表示為:"+Integer.toBinaryString(x)+" bitCount方法返回值為:"+Integer.bitCount(x));  

System.out.println(y+"的二進位表示為:"+Integer.toBinaryString(y)+" bitCount方法返回值為:"+Integer.bitCount(y));  

System.out.println(z+"的二進位表示為:"+Integer.toBinaryString(z)+" bitCount方法返回值為:"+Integer.bitCount(z));  

運行結果為:

1的二進位表示為:1 bitCount方法返回值為:1  

2的二進位表示為:10 bitCount方法返回值為:1  

3的二進位表示為:11 bitCount方法返回值為:2  

3、int numberOfLeadingZeros(int i) 給定一個int類型數據,返回這個數據的二進位串中從最左邊算起連續的「0」的總數量。因為int類型的數據長度為32所以高位不足的地方會以「0」填充。

示例:

int x=1;  

int y=2;  

int z=5;  

System.out.println(x+"的二進位表示為:"+Integer.toBinaryString(x)+"最左邊開始數起連續的0的個數為:"+Integer.numberOfLeadingZeros(x));  

System.out.println(y+"的二進位表示為:"+Integer.toBinaryString(y)+"最左邊開始數起連續的0的個數為:"+Integer.numberOfLeadingZeros(y));  

System.out.println(z+"的二進位表示為:"+Integer.toBinaryString(z)+"最左邊開始數起連續的0的個數為:"+Integer.numberOfLeadingZeros(z)); 

運行結果為:

1的二進位表示為:1最左邊開始數起連續的0的個數為:31  

2的二進位表示為:10最左邊開始數起連續的0的個數為:30  

5的二進位表示為:101最左邊開始數起連續的0的個數為:29 

4、int numberOfTrailingZeros(int i) 給定一個int類型數據,返回這個數據的二進位串中從最右邊算起連續的「0」的總數量。因為int類型的數據長度為32所以高位不足的地方會以「0」填充。

示例:

int x=1;  

int y=2;  

int z=5;  

System.out.println(x+"的二進位表示為:"+Integer.toBinaryString(x)+"最右邊開始數起連續的0的個數為:"+Integer.numberOfTrailingZeros(x));  

System.out.println(y+"的二進位表示為:"+Integer.toBinaryString(y)+"最右邊開始數起連續的0的個數為:"+Integer.numberOfTrailingZeros(y));  

System.out.println(z+"的二進位表示為:"+Integer.toBinaryString(z)+"最右邊開始數起連續的0的個數為:"+Integer.numberOfTrailingZeros(z));  

運行結果為:

1的二進位表示為:1最右邊開始數起連續的0的個數為:0  

2的二進位表示為:10最右邊開始數起連續的0的個數為:1  

5的二進位表示為:101最右邊開始數起連續的0的個數為:0 

5、Integer decode(String nm) 給定一個10進位,8進位,16進位中任何一種進位的字符串,該方法可以將傳入的字符串轉化為10進位數字的Integer類型並返回。

示例:

String a="010";  

String b="10";  

String c="0X10";  

System.out.println("8進位數據"+a+"  解析結果為:"+Integer.decode(a));  

System.out.println("10進位數據"+b+" 解析結果為:"+Integer.decode(b));  

System.out.println("16進位數據"+c+" 解析結果為:"+Integer.decode(c)); 

運行結果為:

8進位數據010  解析結果為:8  

10進位數據10 解析結果為:10  

16進位數據0X10 解析結果為:16

=========================

尚學堂--軟體開發免費試學時間

Java|Android|Web前端

報名有禮:

1. 獲得千元助學金

2. 獲得價值萬元的視頻教材

3. 免費試學七天

免費試學時間:

每周二、四、六

上課地點:

陝西省西安市高新區科技二路西安軟體園天澤大廈五樓

聯繫方式:

QQ:3500819260

電話:15029923798(微信同號)

參與方法:

1. 點擊『閱讀原文』提交信息

2. 公眾號後臺回復『試聽

即可獲得免費試學機會;兩人同行,更多豪禮相送;名額有限,先到先得。

學校組團參加的同學有車接送,接送地點發至後臺由工作人員處理。

=========================

關注尚學堂--輕鬆學編程

每天海量編程學習資料等你來領

Java | Web | Adnroid

更多閱讀:

2018年自學編程的學習計劃表單

程式設計師不要跟算法過不去!算法技術總結

大數據開發學習--推薦書單


點擊下方"閱讀原文",獲取免費聽課名額

相關焦點

  • int 和 integer:裝箱和拆箱的過程,會用到什麼方法
    今天繼續來講面試,已經出了很多java一面真題系列文章了,之後也會整理成一個系列,歡迎持續關注哦。包裝類均位於java.lang包,包裝類和基本數據類型的對應關係如下表所示在這八個類名中,除了Integer和Character類以後,其它六個類的類名和基本數據類型一致,只是類名的第一個字母大寫即可。
  • java面試技巧:Integer和int的那些事
    Java包裝類、裝箱和拆箱包裝類在 Java的設計中提倡種思想,即切皆對象。但是從數據類型的劃分中,我們知道 Java 中的數據類型分為基本數據類型和引數據類型,但是基本數據類型怎麼能夠稱為對象呢?於是 Java 為每種基本數據類型分別設計了對應的類,稱之為包裝類(Wrapper Classes),也有地稱為外覆類或數據類型類。
  • int 和 integer :裝箱和拆箱的過程,會用到什麼方法,你覺得這個會對性能有影響嗎,原因是什麼(百度一面)
    包裝類均位於java.lang包,包裝類和基本數據類型的對應關係如下表所示在這八個類名中,除了Integer和Character類以後,其它六個類的類名和基本數據類型一致,只是類名的第一個字母大寫即可。2、為什麼需要包裝類很多人會有疑問,既然Java中為了提高效率,提供了八種基本數據類型,為什麼還要提供包裝類呢?
  • Java基礎教程:java反射機制教程
    Java反射說的是在運行狀態中,對於任何一個類,我們都能夠知道這個類有哪些方法和屬性。很多動力節點的學員在面試中都會被問到Java反射機制這個問題,為了幫助大家更好的掌握這個知識點,小編整理了一些資料分享給大家。
  • 經典java面試題23道
    ,而wait方法必須要notily方法來喚醒 (2)sleep方法屬於Thread類,而wait屬於Object類(3)sleep方法不會釋放鎖的資源,而wait方法會釋放鎖的資源 面試官:每個引用對象都有wait方法嗎?
  • Java包裝類入門
    1、包裝類的構造方法8個包裝類都有帶自己對應類型參數的構造方法,其中8個包裝類中除了Character還有構造方法重載,參數是String類型的。其實,在 JDK1.5 版本之前,是沒有自動拆裝箱的,開發人員要手動進行裝拆箱://手動裝箱,也就是將基本類型10轉換為引用類型Integer integer = new Integer(10);//或者Integer integer1 = Integer.valueOf(10);//手動拆箱,也就是將引用類型轉換為基本類型
  • Java之 Scanner類
    Scanner 類java.util.Scanner 是 Java5 的新特徵,我們可以通過 Scanner 類來獲取用戶的輸入,並通過 Scanner 類的 next() 與 nextLine() 方法獲取輸入的字符串,在讀取前我們一般需要 使用 hasNext 與 hasNextLine 判斷是否還有輸入的數據。
  • Java 正則表達式教程及示例
    Java正則表達式的類在 java.util.regex 包中,包括三個類:Pattern,Matcher 和 PatternSyntaxException。Pattern對象是正則表達式的已編譯版本。他沒有任何公共構造器,我們通過傳遞一個正則表達式參數給公共靜態方法 compile 來創建一個pattern對象。
  • Java之File類的構造方法
    Java之File類的簡單介紹,File類的靜態成員變量,這次小編要介紹的是File類的構造方法封裝為File對象,不考慮路徑的真假情況代碼如下:public class Demo02File {public static void main(String[] args) {//file類構造方法
  • 阿里P8教你Java註解與反射
    Ⅱ 內置註解Java 有10個內置 註解,6個註解是作用在代碼上的,4個註解是負責註解其他註解的(即元註解),元註解提供對其他註解的類型說明。Ⅲ 自定義註解使用@interface在這裡插入代碼片定義註解,而且自動繼承java.lang.annotation.Annotation接口。
  • 你真的了解java類加載器嗎?
    委託加載模型雙親委派說明:每個ClassLoader實例都有一個父類加載器的引用(不是繼承的關係,是一個組合包含的關係),虛擬機內置的類加載器(Bootstrap ClassLoader)本身沒有父類加載器
  • Java Lambda 使用教程
    二、java重要的函數式接口1、什麼是函數式接口函數接口是只有一個抽象方法的接口,用作 Lambda 表達式的類型。使用@FunctionalInterface註解修飾的類,編譯器會檢測該類是否只有一個抽象方法或接口,否則,會報錯。可以有多個默認方法,靜態方法。1.1 java8自帶的常用函數式接口。
  • 簡單介紹Java中的number和math類
    今天小編給大家簡單介紹一下Java裡面的number和math這兩個類,希望可以對大家有所幫助,raksmart伺服器。一: Number類一般地,當需要使用數字的時候,我們通常使用內置數據類型,如:byte、int、long、double 等。
  • 為Java程式設計師準備的Go教程:快速入門
    包包的規則和java很像,每個包都有自己獨立的空間,所以可以用來做模塊化,封裝,組織代碼等。和java不同的是,go的包裡可以有函數,比如我們常用的fmt.Println(),但是在在java中沒有這種用法,java的方法必須是屬於一個類或者類的實例的。要使用一個包,就需要先導入,使用import關鍵字,和java也一樣,可以參見前面的helloworld示例。
  • Java 8的Nashorn腳本引擎教程
    如果你準備建立一個jjs的符號連結,如下: $ cd /usr/bin $ ln -s $JAVA_HOME/bin/jjs jjs $ jjs jjs> print('Hello World');  本教程關注的是在java代碼中使用 nashorn ,所以我們現在跳過jjs。
  • Java 8時間類,越用越香
    為什麼會在Jdk8中加入很多時間類非線程安全java.util.Date 是非線程安全的,所有的日期類都是可變的而java8中日期和時間基本都被設計final,final修飾的類,天然線程安全。設計很差java.util.Date同時包含日期和時間,而java.sql.Date僅包含日期,兩個類又有相同的名字,令人匪夷所思。
  • 通過本質看現象:關於Integer受內部初始範圍而出現的有趣現象
    在我們定義Integer a=100時,編譯器會轉成Integer.valueOf(100),即內部實現是Integer a= Integer.valueOf(100),而在Integer的源碼裡valueOf方法如下:publicstatic Integer valueOf(int i){if (i >= IntegerCache.low &
  • 理解Java Integer的緩存策略
    現在我們知道了 JDK 源碼中對應實現的部分在哪裡了。有一個專門的 Java 類來負責 Integer 的緩存。IntegerCache 類IntegerCache 是 Integer 類中一個私有的靜態類。我們來看看這個類,有比較詳細的文檔,可以提供我們很多信息。Javadoc 詳細的說明這個類是用來實現緩存支持,並支持 -128 到 127 之間的自動裝箱過程。
  • 吊打面試官系列:說說Integer緩存範圍
    Integer是基本類型int的封裝類。平時不管是入坑多年的小夥伴還在入坑路上的小夥伴,都應該知道的使用頻率是相當高。這些方法我們便稱之為 intrinsic。 =                sun.misc.VM.getSavedProperty("java.lang.Integer.IntegerCache.high");            //如果有配置-XX:AutoBoxCacheMax=<size>            if (integerCacheHighPropValue !
  • Java第五講:類和方法
    示例圖中的程序是一個計算球體體積的程序。輸出完了這一句話以後就是第八行計算球體體積了,在這裡我們用到了一個新的常量叫做PI,我們不能直接使用3.14或是3而要引用Math類裡這個常量PI。然後後面那個pow是一個新方法,它的作用是將第一個參數提升到第二個參數的冪,也就是半徑的三次方。Math類是一個靜態類,只有一個類並且它不會改變。類通常作為模版來創建類似事物的多個版本,版本稱為目標,是它們所基於類的示例。