如何在java中使用Byte類-創(chuàng)新互聯(lián)

這期內(nèi)容當(dāng)中小編將會給大家?guī)碛嘘P(guān)如何在java中使用Byte類,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

員工經(jīng)過長期磨合與沉淀,具備了協(xié)作精神,得以通過團(tuán)隊的力量開發(fā)出優(yōu)質(zhì)的產(chǎn)品。成都創(chuàng)新互聯(lián)公司堅持“專注、創(chuàng)新、易用”的產(chǎn)品理念,因為“專注所以專業(yè)、創(chuàng)新互聯(lián)網(wǎng)站所以易用所以簡單”。公司專注于為企業(yè)提供網(wǎng)站設(shè)計制作、成都網(wǎng)站制作、微信公眾號開發(fā)、電商網(wǎng)站開發(fā),成都微信小程序,軟件定制網(wǎng)站等一站式互聯(lián)網(wǎng)企業(yè)服務(wù)。

Java是什么

Java是一門面向?qū)ο缶幊陶Z言,可以編寫桌面應(yīng)用程序、Web應(yīng)用程序、分布式系統(tǒng)和嵌入式系統(tǒng)應(yīng)用程序。

Byte類/包裝類

包裝類是一個常量類,可實例化 (意義:幫助對應(yīng)的數(shù)據(jù)類型進(jìn)行數(shù)據(jù)類型)

java數(shù)據(jù)類型包括內(nèi)置數(shù)據(jù)類型和引用數(shù)據(jù)類型

內(nèi)置數(shù)據(jù)類型 :含6中數(shù)字類型(四個整數(shù)型,兩個浮點型),一種字符類型,還有布爾類型

byte

byte:數(shù)據(jù)類型占用1個字節(jié)=8bit,以二進(jìn)制補碼表示的整數(shù)

取值范圍:默認(rèn)值為0,最小值為-128(-2^7);較大值是127(2^7-1)

數(shù)據(jù)類型關(guān)鍵字內(nèi)存中占用字節(jié)數(shù)取值范圍默認(rèn)值
布爾型boolean1true/falseFALSE
字節(jié)型byte1-128~1270
短整型short2-2^15~2^15-10
整型int4-2^31~2^31-10
長整型long8-2^63~2^63-10
字符型char20~2^16-1'\u000'
單精度浮點型float41.4013E-45~3.4028E+380.0F
雙精度浮點型double84.9E-324~1.7977E+3080.0D

用途:byte類型用在大型數(shù)組中節(jié)約空間,主要代替整數(shù),因byte變量占用內(nèi)存的空間只有int類型的1/4;不足是這個數(shù)取值范圍大,byte不能全部替代

如何在java中使用Byte類

常用方法

A.構(gòu)造方法

public Byte(byte value)
public Byte(String s)

B.普通方法+類方法(對數(shù)據(jù)類型做轉(zhuǎn)換)

piublic byte byteValue()
public short shortValue()
public int intVlaue()
public long longValue()
public float floatValue()
public double doubleValue()
public String toString()
public static String toString(byte b)

包裝類和基本數(shù)據(jù)類型的對象關(guān)系

如何在java中使用Byte類

注:常量類是否可以被實例化主要看構(gòu)造方法

package com.youceedu.test.wrapper; 
public class TestByte { 
 public static void main(String[] args) {
 // TODO Auto-generated method stub
 byte a = 9;
 byte b = -7;
  String result = Byte.toString(a);
 Byte c = new Byte((byte) 9);
 System.out.println(c.floatValue()); 
 System.out.println(result+b);
 } 
}

補充:java的byte數(shù)據(jù)類型總結(jié)||二進(jìn)制的原碼、反碼和補碼

二進(jìn)制的原碼、反碼和補碼

原碼就是二進(jìn)制定點表示法,即高位為符號位,“0”表示正,“1”表示負(fù),其余位表示數(shù)值的大小。

反碼表示法規(guī)定:正數(shù)的反碼與其原碼相同;負(fù)數(shù)的反碼是對其原碼逐位取反,但符號位除外。

補碼表示法規(guī)定:正數(shù)的補碼與其原碼相同;負(fù)數(shù)的補碼是在其反碼的末位加1。

正數(shù)

首位表示符號位,原碼、反碼和補碼都是本身。

負(fù)數(shù)

如何計算負(fù)數(shù)在計算機中的二進(jìn)制(即它的補碼)?

首先對負(fù)數(shù)的絕對值取反,然后+1得到負(fù)數(shù)的補碼。

例如:byte a=-5

-5的絕對值=5 5的二進(jìn)制表示是 0000 0101 取反得到 1111 1010 +1運算得到 1111 1011 ,那么1111 1011就是-5的補碼。

也可以這樣,用原碼計算

例如:byte a=-5 原碼表示 1000 0101

計算其反碼為 1111 1010

計算其補碼為 1111 1011

所以 -5在計算機中表示為1111 1011

byte

byte的取值范圍為什么是-128~127

byte 表示一個字節(jié),8bit,其中高位是符號位。因此,較大值為 0111 1111,即127;最小值是負(fù)數(shù)為 1000 0000(規(guī)定)【其他數(shù)據(jù)類型的較大最小值也可以這樣以此類推】。在計算機中二進(jìn)制都是以補碼的形式表示的,我們也可以這樣來理解,為什么最小是-128

最小負(fù)數(shù)補碼表示為:1000 0000

由補碼計算原碼:

1000 0000 作-1 運算 得到 0111 1111,取反 1000 0000 因為負(fù)數(shù)的補碼是其絕對值取反,即10000000為最小負(fù)數(shù)的絕對值,而10000000的十進(jìn)制表示是128,所以最小負(fù)數(shù)是-128

byte與ASCII

標(biāo)準(zhǔn)ASCII 碼也叫基礎(chǔ)ASCII碼,使用7 位二進(jìn)制數(shù)(剩下的1位二進(jìn)制為0)來表示所有的大寫和小寫字母,數(shù)字0 到9、標(biāo)點符號, 以及在美式英語中使用的特殊控制字符。

ASCII碼表示的范圍是0~127 剛好byte類型可以覆蓋到。因此byte類型和ASCII可以互相轉(zhuǎn)換??梢愿鶕?jù)ASCII對照表進(jìn)行查看http://tool.oschina.net/commons?type=4

當(dāng)byte類型的變量的值實時是在''單引號里面的時候,該byte變量的值表示的是ASCII碼,可以通過ASCII對照表查看其真實的數(shù)值。

比如:

public class ByteTest {
 public static void main(String args[]) {
  byte a = 'a';
  byte b = 'B';
  byte c = '4';
 
  System.out.println("a=" + a);
  System.out.println("b=" + b);
  System.out.println("c=" + c);
 }
}

輸出:

a=97
b=66
c=52

byte&0xff的作用

byte->int 因為byte是8位,而int是32位,當(dāng)byte類型轉(zhuǎn)換為int類型的時候,會自動用符號位補足高位。例如 -5 1111 1011 轉(zhuǎn)為int 類型會表示為 1111 1111 1111 1111 1111 1111 1111 1011 其表示的十進(jìn)制的數(shù)值不變。

有的時候,我們只想保留二進(jìn)制的補碼形式,我們可以用byte&0xff。0xff是十六進(jìn)制,默認(rèn)是int類型,其二進(jìn)制表示為 0000 0000 0000 0000 0000 0000 1111 1111 將byte類型的數(shù)值跟0xff作&操作,可以將高24位變?yōu)?,保留低8位。當(dāng)然對應(yīng)的十進(jìn)制數(shù)也發(fā)生了變化。(相當(dāng)于將byte變成無符號int類型)

例如:byte a=-5 ((int)-5)&0xff

 1111 1111 1111 1111 1111 1111 1111 1011
&
 0000 0000 0000 0000 0000 0000 1111 1111
= 0000 0000 0000 0000 0000 0000 1111 1011

int強轉(zhuǎn)換為byte

例如:

int a=234 byte b=(byte)a -->得到b=-22 因為234已經(jīng)超出了byte類型的表示范圍,強轉(zhuǎn)會直接丟棄高位,保留低8位。

int類型的234的二進(jìn)制表示為:1110 1010【高24位全是0】 強轉(zhuǎn)為byte類型,舍棄高24位得到1110 1010 ,第一位為符號位1,得到一個負(fù)數(shù)-22。

上述就是小編為大家分享的如何在java中使用Byte類了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

網(wǎng)頁標(biāo)題:如何在java中使用Byte類-創(chuàng)新互聯(lián)
當(dāng)前地址:http://www.muchs.cn/article6/djpoig.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站定制網(wǎng)站、網(wǎng)站建設(shè)、品牌網(wǎng)站設(shè)計網(wǎng)站營銷、定制開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司